@adaas/a-server 0.0.22 → 0.0.24

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 (516) hide show
  1. package/.conf/tsconfig.base.json +79 -0
  2. package/.conf/tsconfig.browser.json +32 -0
  3. package/.conf/tsconfig.node.json +33 -0
  4. package/LICENSE +10 -19
  5. package/dist/browser/index.d.mts +1699 -0
  6. package/dist/browser/index.mjs +2935 -0
  7. package/dist/browser/index.mjs.map +1 -0
  8. package/dist/node/A-Request.entity-8_9MCXT2.d.ts +533 -0
  9. package/dist/node/A-Request.entity-r905O60G.d.mts +533 -0
  10. package/dist/node/A-Response.entity-6qhiV7BE.d.mts +348 -0
  11. package/dist/node/A-Response.entity-bjh6bofZ.d.ts +348 -0
  12. package/dist/node/channels/A-Http/A-Http.channel.constants.d.mts +9 -0
  13. package/dist/node/channels/A-Http/A-Http.channel.constants.d.ts +9 -0
  14. package/dist/node/channels/A-Http/A-Http.channel.constants.js +13 -0
  15. package/dist/node/channels/A-Http/A-Http.channel.constants.js.map +1 -0
  16. package/dist/node/channels/A-Http/A-Http.channel.constants.mjs +12 -0
  17. package/dist/node/channels/A-Http/A-Http.channel.constants.mjs.map +1 -0
  18. package/dist/node/channels/A-Http/A-Http.channel.d.mts +23 -0
  19. package/dist/node/channels/A-Http/A-Http.channel.d.ts +23 -0
  20. package/dist/node/channels/A-Http/A-Http.channel.error.d.mts +7 -0
  21. package/dist/node/channels/A-Http/A-Http.channel.error.d.ts +7 -0
  22. package/dist/node/channels/A-Http/A-Http.channel.error.js +11 -0
  23. package/dist/node/channels/A-Http/A-Http.channel.error.js.map +1 -0
  24. package/dist/node/channels/A-Http/A-Http.channel.error.mjs +10 -0
  25. package/dist/node/channels/A-Http/A-Http.channel.error.mjs.map +1 -0
  26. package/dist/node/channels/A-Http/A-Http.channel.js +122 -0
  27. package/dist/node/channels/A-Http/A-Http.channel.js.map +1 -0
  28. package/dist/node/channels/A-Http/A-Http.channel.mjs +110 -0
  29. package/dist/node/channels/A-Http/A-Http.channel.mjs.map +1 -0
  30. package/dist/node/channels/A-Http/A-Http.channel.types.d.mts +67 -0
  31. package/dist/node/channels/A-Http/A-Http.channel.types.d.ts +67 -0
  32. package/dist/node/channels/A-Http/A-Http.channel.types.js +4 -0
  33. package/dist/node/channels/A-Http/A-Http.channel.types.js.map +1 -0
  34. package/dist/node/channels/A-Http/A-Http.channel.types.mjs +3 -0
  35. package/dist/node/channels/A-Http/A-Http.channel.types.mjs.map +1 -0
  36. package/dist/node/channels/A-Websockets/A-Websockets.channel.d.mts +7 -0
  37. package/dist/node/channels/A-Websockets/A-Websockets.channel.d.ts +7 -0
  38. package/dist/node/channels/A-Websockets/A-Websockets.channel.js +13 -0
  39. package/dist/node/channels/A-Websockets/A-Websockets.channel.js.map +1 -0
  40. package/dist/node/channels/A-Websockets/A-Websockets.channel.mjs +12 -0
  41. package/dist/node/channels/A-Websockets/A-Websockets.channel.mjs.map +1 -0
  42. package/dist/node/chunk-EQQGB2QZ.mjs +15 -0
  43. package/dist/node/chunk-EQQGB2QZ.mjs.map +1 -0
  44. package/dist/node/constants/env.constants.d.mts +12 -0
  45. package/dist/node/constants/env.constants.d.ts +12 -0
  46. package/dist/node/constants/env.constants.js +23 -0
  47. package/dist/node/constants/env.constants.js.map +1 -0
  48. package/dist/node/constants/env.constants.mjs +22 -0
  49. package/dist/node/constants/env.constants.mjs.map +1 -0
  50. package/dist/node/controllers/A-CommandController/A-CommandController.component.d.mts +29 -0
  51. package/dist/node/controllers/A-CommandController/A-CommandController.component.d.ts +29 -0
  52. package/dist/node/controllers/A-CommandController/A-CommandController.component.js +55 -0
  53. package/dist/node/controllers/A-CommandController/A-CommandController.component.js.map +1 -0
  54. package/dist/node/controllers/A-CommandController/A-CommandController.component.mjs +43 -0
  55. package/dist/node/controllers/A-CommandController/A-CommandController.component.mjs.map +1 -0
  56. package/dist/node/controllers/A-EntityController/A-EntityController.component.d.mts +44 -0
  57. package/dist/node/controllers/A-EntityController/A-EntityController.component.d.ts +44 -0
  58. package/dist/node/controllers/A-EntityController/A-EntityController.component.js +189 -0
  59. package/dist/node/controllers/A-EntityController/A-EntityController.component.js.map +1 -0
  60. package/dist/node/controllers/A-EntityController/A-EntityController.component.mjs +177 -0
  61. package/dist/node/controllers/A-EntityController/A-EntityController.component.mjs.map +1 -0
  62. package/dist/node/controllers/A-EntityController/A-EntityController.component.types.d.mts +2 -0
  63. package/dist/node/controllers/A-EntityController/A-EntityController.component.types.d.ts +2 -0
  64. package/dist/node/controllers/A-EntityController/A-EntityController.component.types.js +4 -0
  65. package/dist/node/controllers/A-EntityController/A-EntityController.component.types.js.map +1 -0
  66. package/dist/node/controllers/A-EntityController/A-EntityController.component.types.mjs +3 -0
  67. package/dist/node/controllers/A-EntityController/A-EntityController.component.types.mjs.map +1 -0
  68. package/dist/node/controllers/A-ListingController/A-ListingController.component.d.mts +28 -0
  69. package/dist/node/controllers/A-ListingController/A-ListingController.component.d.ts +28 -0
  70. package/dist/node/controllers/A-ListingController/A-ListingController.component.js +59 -0
  71. package/dist/node/controllers/A-ListingController/A-ListingController.component.js.map +1 -0
  72. package/dist/node/controllers/A-ListingController/A-ListingController.component.mjs +47 -0
  73. package/dist/node/controllers/A-ListingController/A-ListingController.component.mjs.map +1 -0
  74. package/dist/node/controllers/A-ListingController/A-ListingController.types.d.mts +2 -0
  75. package/dist/node/controllers/A-ListingController/A-ListingController.types.d.ts +2 -0
  76. package/dist/node/controllers/A-ListingController/A-ListingController.types.js +4 -0
  77. package/dist/node/controllers/A-ListingController/A-ListingController.types.js.map +1 -0
  78. package/dist/node/controllers/A-ListingController/A-ListingController.types.mjs +3 -0
  79. package/dist/node/controllers/A-ListingController/A-ListingController.types.mjs.map +1 -0
  80. package/dist/node/controllers/A-ServerHealthMonitor/A-ServerHealthMonitor.component.d.mts +30 -0
  81. package/dist/node/controllers/A-ServerHealthMonitor/A-ServerHealthMonitor.component.d.ts +30 -0
  82. package/dist/node/controllers/A-ServerHealthMonitor/A-ServerHealthMonitor.component.js +46 -0
  83. package/dist/node/controllers/A-ServerHealthMonitor/A-ServerHealthMonitor.component.js.map +1 -0
  84. package/dist/node/controllers/A-ServerHealthMonitor/A-ServerHealthMonitor.component.mjs +34 -0
  85. package/dist/node/controllers/A-ServerHealthMonitor/A-ServerHealthMonitor.component.mjs.map +1 -0
  86. package/dist/node/controllers/A-ServerHealthMonitor/A-ServerHealthMonitor.types.d.mts +2 -0
  87. package/dist/node/controllers/A-ServerHealthMonitor/A-ServerHealthMonitor.types.d.ts +2 -0
  88. package/dist/node/controllers/A-ServerHealthMonitor/A-ServerHealthMonitor.types.js +4 -0
  89. package/dist/node/controllers/A-ServerHealthMonitor/A-ServerHealthMonitor.types.js.map +1 -0
  90. package/dist/node/controllers/A-ServerHealthMonitor/A-ServerHealthMonitor.types.mjs +3 -0
  91. package/dist/node/controllers/A-ServerHealthMonitor/A-ServerHealthMonitor.types.mjs.map +1 -0
  92. package/dist/node/index.d.mts +51 -0
  93. package/dist/node/index.d.ts +51 -0
  94. package/dist/node/index.js +320 -0
  95. package/dist/node/index.js.map +1 -0
  96. package/dist/node/index.mjs +48 -0
  97. package/dist/node/index.mjs.map +1 -0
  98. package/dist/node/lib/A-Request/A-HttpRequestData.context.d.mts +12 -0
  99. package/dist/node/lib/A-Request/A-HttpRequestData.context.d.ts +12 -0
  100. package/dist/node/lib/A-Request/A-HttpRequestData.context.js +25 -0
  101. package/dist/node/lib/A-Request/A-HttpRequestData.context.js.map +1 -0
  102. package/dist/node/lib/A-Request/A-HttpRequestData.context.mjs +24 -0
  103. package/dist/node/lib/A-Request/A-HttpRequestData.context.mjs.map +1 -0
  104. package/dist/node/lib/A-Request/A-HttpServerRequest.context.d.mts +39 -0
  105. package/dist/node/lib/A-Request/A-HttpServerRequest.context.d.ts +39 -0
  106. package/dist/node/lib/A-Request/A-HttpServerRequest.context.js +56 -0
  107. package/dist/node/lib/A-Request/A-HttpServerRequest.context.js.map +1 -0
  108. package/dist/node/lib/A-Request/A-HttpServerRequest.context.mjs +55 -0
  109. package/dist/node/lib/A-Request/A-HttpServerRequest.context.mjs.map +1 -0
  110. package/dist/node/lib/A-Request/A-Request.constants.d.mts +18 -0
  111. package/dist/node/lib/A-Request/A-Request.constants.d.ts +18 -0
  112. package/dist/node/lib/A-Request/A-Request.constants.js +22 -0
  113. package/dist/node/lib/A-Request/A-Request.constants.js.map +1 -0
  114. package/dist/node/lib/A-Request/A-Request.constants.mjs +22 -0
  115. package/dist/node/lib/A-Request/A-Request.constants.mjs.map +1 -0
  116. package/dist/node/lib/A-Request/A-Request.entity.d.mts +17 -0
  117. package/dist/node/lib/A-Request/A-Request.entity.d.ts +17 -0
  118. package/dist/node/lib/A-Request/A-Request.entity.js +651 -0
  119. package/dist/node/lib/A-Request/A-Request.entity.js.map +1 -0
  120. package/dist/node/lib/A-Request/A-Request.entity.mjs +639 -0
  121. package/dist/node/lib/A-Request/A-Request.entity.mjs.map +1 -0
  122. package/dist/node/lib/A-Request/A-Request.env.d.mts +37 -0
  123. package/dist/node/lib/A-Request/A-Request.env.d.ts +37 -0
  124. package/dist/node/lib/A-Request/A-Request.env.js +39 -0
  125. package/dist/node/lib/A-Request/A-Request.env.js.map +1 -0
  126. package/dist/node/lib/A-Request/A-Request.env.mjs +38 -0
  127. package/dist/node/lib/A-Request/A-Request.env.mjs.map +1 -0
  128. package/dist/node/lib/A-Request/A-Request.error.d.mts +11 -0
  129. package/dist/node/lib/A-Request/A-Request.error.d.ts +11 -0
  130. package/dist/node/lib/A-Request/A-Request.error.js +15 -0
  131. package/dist/node/lib/A-Request/A-Request.error.js.map +1 -0
  132. package/dist/node/lib/A-Request/A-Request.error.mjs +14 -0
  133. package/dist/node/lib/A-Request/A-Request.error.mjs.map +1 -0
  134. package/dist/node/lib/A-Request/A-Request.helper.d.mts +105 -0
  135. package/dist/node/lib/A-Request/A-Request.helper.d.ts +105 -0
  136. package/dist/node/lib/A-Request/A-Request.helper.js +181 -0
  137. package/dist/node/lib/A-Request/A-Request.helper.js.map +1 -0
  138. package/dist/node/lib/A-Request/A-Request.helper.mjs +180 -0
  139. package/dist/node/lib/A-Request/A-Request.helper.mjs.map +1 -0
  140. package/dist/node/lib/A-Request/A-Request.types.d.mts +17 -0
  141. package/dist/node/lib/A-Request/A-Request.types.d.ts +17 -0
  142. package/dist/node/lib/A-Request/A-Request.types.js +14 -0
  143. package/dist/node/lib/A-Request/A-Request.types.js.map +1 -0
  144. package/dist/node/lib/A-Request/A-Request.types.mjs +14 -0
  145. package/dist/node/lib/A-Request/A-Request.types.mjs.map +1 -0
  146. package/dist/node/lib/A-Response/A-Response.constants.d.mts +24 -0
  147. package/dist/node/lib/A-Response/A-Response.constants.d.ts +24 -0
  148. package/dist/node/lib/A-Response/A-Response.constants.js +28 -0
  149. package/dist/node/lib/A-Response/A-Response.constants.js.map +1 -0
  150. package/dist/node/lib/A-Response/A-Response.constants.mjs +28 -0
  151. package/dist/node/lib/A-Response/A-Response.constants.mjs.map +1 -0
  152. package/dist/node/lib/A-Response/A-Response.entity.d.mts +20 -0
  153. package/dist/node/lib/A-Response/A-Response.entity.d.ts +20 -0
  154. package/dist/node/lib/A-Response/A-Response.entity.js +608 -0
  155. package/dist/node/lib/A-Response/A-Response.entity.js.map +1 -0
  156. package/dist/node/lib/A-Response/A-Response.entity.mjs +596 -0
  157. package/dist/node/lib/A-Response/A-Response.entity.mjs.map +1 -0
  158. package/dist/node/lib/A-Response/A-Response.env.d.mts +2 -0
  159. package/dist/node/lib/A-Response/A-Response.env.d.ts +2 -0
  160. package/dist/node/lib/A-Response/A-Response.env.js +4 -0
  161. package/dist/node/lib/A-Response/A-Response.env.js.map +1 -0
  162. package/dist/node/lib/A-Response/A-Response.env.mjs +3 -0
  163. package/dist/node/lib/A-Response/A-Response.env.mjs.map +1 -0
  164. package/dist/node/lib/A-Response/A-Response.error.d.mts +6 -0
  165. package/dist/node/lib/A-Response/A-Response.error.d.ts +6 -0
  166. package/dist/node/lib/A-Response/A-Response.error.js +10 -0
  167. package/dist/node/lib/A-Response/A-Response.error.js.map +1 -0
  168. package/dist/node/lib/A-Response/A-Response.error.mjs +9 -0
  169. package/dist/node/lib/A-Response/A-Response.error.mjs.map +1 -0
  170. package/dist/node/lib/A-Response/A-Response.types.d.mts +20 -0
  171. package/dist/node/lib/A-Response/A-Response.types.d.ts +20 -0
  172. package/dist/node/lib/A-Response/A-Response.types.js +4 -0
  173. package/dist/node/lib/A-Response/A-Response.types.js.map +1 -0
  174. package/dist/node/lib/A-Response/A-Response.types.mjs +3 -0
  175. package/dist/node/lib/A-Response/A-Response.types.mjs.map +1 -0
  176. package/dist/node/lib/A-Server/A-HttpServer.constants.d.mts +7 -0
  177. package/dist/node/lib/A-Server/A-HttpServer.constants.d.ts +7 -0
  178. package/dist/node/lib/A-Server/A-HttpServer.constants.js +11 -0
  179. package/dist/node/lib/A-Server/A-HttpServer.constants.js.map +1 -0
  180. package/dist/node/lib/A-Server/A-HttpServer.constants.mjs +11 -0
  181. package/dist/node/lib/A-Server/A-HttpServer.constants.mjs.map +1 -0
  182. package/dist/node/lib/A-Server/A-HttpServer.container.d.mts +50 -0
  183. package/dist/node/lib/A-Server/A-HttpServer.container.d.ts +50 -0
  184. package/dist/node/lib/A-Server/A-HttpServer.container.js +196 -0
  185. package/dist/node/lib/A-Server/A-HttpServer.container.js.map +1 -0
  186. package/dist/node/lib/A-Server/A-HttpServer.container.mjs +184 -0
  187. package/dist/node/lib/A-Server/A-HttpServer.container.mjs.map +1 -0
  188. package/dist/node/lib/A-Server/A-HttpServer.error.d.mts +54 -0
  189. package/dist/node/lib/A-Server/A-HttpServer.error.d.ts +54 -0
  190. package/dist/node/lib/A-Server/A-HttpServer.error.js +118 -0
  191. package/dist/node/lib/A-Server/A-HttpServer.error.js.map +1 -0
  192. package/dist/node/lib/A-Server/A-HttpServer.error.mjs +117 -0
  193. package/dist/node/lib/A-Server/A-HttpServer.error.mjs.map +1 -0
  194. package/dist/node/lib/A-Server/A-HttpServer.types.d.mts +19 -0
  195. package/dist/node/lib/A-Server/A-HttpServer.types.d.ts +19 -0
  196. package/dist/node/lib/A-Server/A-HttpServer.types.js +4 -0
  197. package/dist/node/lib/A-Server/A-HttpServer.types.js.map +1 -0
  198. package/dist/node/lib/A-Server/A-HttpServer.types.mjs +3 -0
  199. package/dist/node/lib/A-Server/A-HttpServer.types.mjs.map +1 -0
  200. package/dist/node/lib/A-Server/A-Server.context.d.mts +22 -0
  201. package/dist/node/lib/A-Server/A-Server.context.d.ts +22 -0
  202. package/dist/node/lib/A-Server/A-Server.context.js +24 -0
  203. package/dist/node/lib/A-Server/A-Server.context.js.map +1 -0
  204. package/dist/node/lib/A-Server/A-Server.context.mjs +23 -0
  205. package/dist/node/lib/A-Server/A-Server.context.mjs.map +1 -0
  206. package/dist/node/lib/A-Server/A-Server.error.d.mts +14 -0
  207. package/dist/node/lib/A-Server/A-Server.error.d.ts +14 -0
  208. package/dist/node/lib/A-Server/A-Server.error.js +26 -0
  209. package/dist/node/lib/A-Server/A-Server.error.js.map +1 -0
  210. package/dist/node/lib/A-Server/A-Server.error.mjs +25 -0
  211. package/dist/node/lib/A-Server/A-Server.error.mjs.map +1 -0
  212. package/dist/node/lib/A-Server/A-Server.types.d.mts +26 -0
  213. package/dist/node/lib/A-Server/A-Server.types.d.ts +26 -0
  214. package/dist/node/lib/A-Server/A-Server.types.js +4 -0
  215. package/dist/node/lib/A-Server/A-Server.types.js.map +1 -0
  216. package/dist/node/lib/A-Server/A-Server.types.mjs +3 -0
  217. package/dist/node/lib/A-Server/A-Server.types.mjs.map +1 -0
  218. package/dist/node/lib/A-ServerController/A-ServerController.component.d.mts +29 -0
  219. package/dist/node/lib/A-ServerController/A-ServerController.component.d.ts +29 -0
  220. package/dist/node/lib/A-ServerController/A-ServerController.component.js +49 -0
  221. package/dist/node/lib/A-ServerController/A-ServerController.component.js.map +1 -0
  222. package/dist/node/lib/A-ServerController/A-ServerController.component.mjs +37 -0
  223. package/dist/node/lib/A-ServerController/A-ServerController.component.mjs.map +1 -0
  224. package/dist/node/lib/A-ServerController/A-ServerController.types.d.mts +2 -0
  225. package/dist/node/lib/A-ServerController/A-ServerController.types.d.ts +2 -0
  226. package/dist/node/lib/A-ServerController/A-ServerController.types.js +4 -0
  227. package/dist/node/lib/A-ServerController/A-ServerController.types.js.map +1 -0
  228. package/dist/node/lib/A-ServerController/A-ServerController.types.mjs +3 -0
  229. package/dist/node/lib/A-ServerController/A-ServerController.types.mjs.map +1 -0
  230. package/dist/node/lib/A-ServerEntityList/A-EntityList.entity.d.mts +49 -0
  231. package/dist/node/lib/A-ServerEntityList/A-EntityList.entity.d.ts +49 -0
  232. package/dist/node/lib/A-ServerEntityList/A-EntityList.entity.js +91 -0
  233. package/dist/node/lib/A-ServerEntityList/A-EntityList.entity.js.map +1 -0
  234. package/dist/node/lib/A-ServerEntityList/A-EntityList.entity.mjs +90 -0
  235. package/dist/node/lib/A-ServerEntityList/A-EntityList.entity.mjs.map +1 -0
  236. package/dist/node/lib/A-ServerEntityList/A-EntityList.types.d.mts +22 -0
  237. package/dist/node/lib/A-ServerEntityList/A-EntityList.types.d.ts +22 -0
  238. package/dist/node/lib/A-ServerEntityList/A-EntityList.types.js +10 -0
  239. package/dist/node/lib/A-ServerEntityList/A-EntityList.types.js.map +1 -0
  240. package/dist/node/lib/A-ServerEntityList/A-EntityList.types.mjs +10 -0
  241. package/dist/node/lib/A-ServerEntityList/A-EntityList.types.mjs.map +1 -0
  242. package/dist/node/lib/A-ServerListQuery/A-ServerListQueryFilter.context.d.mts +13 -0
  243. package/dist/node/lib/A-ServerListQuery/A-ServerListQueryFilter.context.d.ts +13 -0
  244. package/dist/node/lib/A-ServerListQuery/A-ServerListQueryFilter.context.js +32 -0
  245. package/dist/node/lib/A-ServerListQuery/A-ServerListQueryFilter.context.js.map +1 -0
  246. package/dist/node/lib/A-ServerListQuery/A-ServerListQueryFilter.context.mjs +31 -0
  247. package/dist/node/lib/A-ServerListQuery/A-ServerListQueryFilter.context.mjs.map +1 -0
  248. package/dist/node/lib/A-ServerLogger/A-ServerLogger.component.d.mts +48 -0
  249. package/dist/node/lib/A-ServerLogger/A-ServerLogger.component.d.ts +48 -0
  250. package/dist/node/lib/A-ServerLogger/A-ServerLogger.component.js +88 -0
  251. package/dist/node/lib/A-ServerLogger/A-ServerLogger.component.js.map +1 -0
  252. package/dist/node/lib/A-ServerLogger/A-ServerLogger.component.mjs +76 -0
  253. package/dist/node/lib/A-ServerLogger/A-ServerLogger.component.mjs.map +1 -0
  254. package/dist/node/lib/A-ServerLogger/A-ServerLogger.constants.d.mts +24 -0
  255. package/dist/node/lib/A-ServerLogger/A-ServerLogger.constants.d.ts +24 -0
  256. package/dist/node/lib/A-ServerLogger/A-ServerLogger.constants.js +33 -0
  257. package/dist/node/lib/A-ServerLogger/A-ServerLogger.constants.js.map +1 -0
  258. package/dist/node/lib/A-ServerLogger/A-ServerLogger.constants.mjs +33 -0
  259. package/dist/node/lib/A-ServerLogger/A-ServerLogger.constants.mjs.map +1 -0
  260. package/dist/node/lib/A-ServerLogger/A-ServerLogger.types.d.mts +12 -0
  261. package/dist/node/lib/A-ServerLogger/A-ServerLogger.types.d.ts +12 -0
  262. package/dist/node/lib/A-ServerLogger/A-ServerLogger.types.js +4 -0
  263. package/dist/node/lib/A-ServerLogger/A-ServerLogger.types.js.map +1 -0
  264. package/dist/node/lib/A-ServerLogger/A-ServerLogger.types.mjs +3 -0
  265. package/dist/node/lib/A-ServerLogger/A-ServerLogger.types.mjs.map +1 -0
  266. package/dist/node/lib/A-ServerMiddleware/A-ServerMiddleware.component.d.mts +6 -0
  267. package/dist/node/lib/A-ServerMiddleware/A-ServerMiddleware.component.d.ts +6 -0
  268. package/dist/node/lib/A-ServerMiddleware/A-ServerMiddleware.component.js +18 -0
  269. package/dist/node/lib/A-ServerMiddleware/A-ServerMiddleware.component.js.map +1 -0
  270. package/dist/node/lib/A-ServerMiddleware/A-ServerMiddleware.component.mjs +17 -0
  271. package/dist/node/lib/A-ServerMiddleware/A-ServerMiddleware.component.mjs.map +1 -0
  272. package/dist/node/lib/A-ServerMiddleware/A-ServerMiddleware.constants.d.mts +2 -0
  273. package/dist/node/lib/A-ServerMiddleware/A-ServerMiddleware.constants.d.ts +2 -0
  274. package/dist/node/lib/A-ServerMiddleware/A-ServerMiddleware.constants.js +4 -0
  275. package/dist/node/lib/A-ServerMiddleware/A-ServerMiddleware.constants.js.map +1 -0
  276. package/dist/node/lib/A-ServerMiddleware/A-ServerMiddleware.constants.mjs +3 -0
  277. package/dist/node/lib/A-ServerMiddleware/A-ServerMiddleware.constants.mjs.map +1 -0
  278. package/dist/node/lib/A-ServerMiddleware/A-ServerMiddleware.types.d.mts +2 -0
  279. package/dist/node/lib/A-ServerMiddleware/A-ServerMiddleware.types.d.ts +2 -0
  280. package/dist/node/lib/A-ServerMiddleware/A-ServerMiddleware.types.js +4 -0
  281. package/dist/node/lib/A-ServerMiddleware/A-ServerMiddleware.types.js.map +1 -0
  282. package/dist/node/lib/A-ServerMiddleware/A-ServerMiddleware.types.mjs +3 -0
  283. package/dist/node/lib/A-ServerMiddleware/A-ServerMiddleware.types.mjs.map +1 -0
  284. package/dist/node/lib/A-ServerProxy/A-ServerProxy.component.d.mts +31 -0
  285. package/dist/node/lib/A-ServerProxy/A-ServerProxy.component.d.ts +31 -0
  286. package/dist/node/lib/A-ServerProxy/A-ServerProxy.component.js +90 -0
  287. package/dist/node/lib/A-ServerProxy/A-ServerProxy.component.js.map +1 -0
  288. package/dist/node/lib/A-ServerProxy/A-ServerProxy.component.mjs +78 -0
  289. package/dist/node/lib/A-ServerProxy/A-ServerProxy.component.mjs.map +1 -0
  290. package/dist/node/lib/A-ServerProxy/A-ServerProxy.constants.d.mts +9 -0
  291. package/dist/node/lib/A-ServerProxy/A-ServerProxy.constants.d.ts +9 -0
  292. package/dist/node/lib/A-ServerProxy/A-ServerProxy.constants.js +14 -0
  293. package/dist/node/lib/A-ServerProxy/A-ServerProxy.constants.js.map +1 -0
  294. package/dist/node/lib/A-ServerProxy/A-ServerProxy.constants.mjs +14 -0
  295. package/dist/node/lib/A-ServerProxy/A-ServerProxy.constants.mjs.map +1 -0
  296. package/dist/node/lib/A-ServerProxy/A-ServerProxy.context.d.mts +36 -0
  297. package/dist/node/lib/A-ServerProxy/A-ServerProxy.context.d.ts +36 -0
  298. package/dist/node/lib/A-ServerProxy/A-ServerProxy.context.js +60 -0
  299. package/dist/node/lib/A-ServerProxy/A-ServerProxy.context.js.map +1 -0
  300. package/dist/node/lib/A-ServerProxy/A-ServerProxy.context.mjs +59 -0
  301. package/dist/node/lib/A-ServerProxy/A-ServerProxy.context.mjs.map +1 -0
  302. package/dist/node/lib/A-ServerProxy/A-ServerProxy.types.d.mts +23 -0
  303. package/dist/node/lib/A-ServerProxy/A-ServerProxy.types.d.ts +23 -0
  304. package/dist/node/lib/A-ServerProxy/A-ServerProxy.types.js +4 -0
  305. package/dist/node/lib/A-ServerProxy/A-ServerProxy.types.js.map +1 -0
  306. package/dist/node/lib/A-ServerProxy/A-ServerProxy.types.mjs +3 -0
  307. package/dist/node/lib/A-ServerProxy/A-ServerProxy.types.mjs.map +1 -0
  308. package/dist/node/lib/A-ServerRoute/A-ServerRoute.constants.d.mts +20 -0
  309. package/dist/node/lib/A-ServerRoute/A-ServerRoute.constants.d.ts +20 -0
  310. package/dist/node/lib/A-ServerRoute/A-ServerRoute.constants.js +25 -0
  311. package/dist/node/lib/A-ServerRoute/A-ServerRoute.constants.js.map +1 -0
  312. package/dist/node/lib/A-ServerRoute/A-ServerRoute.constants.mjs +24 -0
  313. package/dist/node/lib/A-ServerRoute/A-ServerRoute.constants.mjs.map +1 -0
  314. package/dist/node/lib/A-ServerRoute/A-ServerRoute.entity.d.mts +15 -0
  315. package/dist/node/lib/A-ServerRoute/A-ServerRoute.entity.d.ts +15 -0
  316. package/dist/node/lib/A-ServerRoute/A-ServerRoute.entity.js +24 -0
  317. package/dist/node/lib/A-ServerRoute/A-ServerRoute.entity.js.map +1 -0
  318. package/dist/node/lib/A-ServerRoute/A-ServerRoute.entity.mjs +23 -0
  319. package/dist/node/lib/A-ServerRoute/A-ServerRoute.entity.mjs.map +1 -0
  320. package/dist/node/lib/A-ServerRoute/A-ServerRoute.types.d.mts +6 -0
  321. package/dist/node/lib/A-ServerRoute/A-ServerRoute.types.d.ts +6 -0
  322. package/dist/node/lib/A-ServerRoute/A-ServerRoute.types.js +4 -0
  323. package/dist/node/lib/A-ServerRoute/A-ServerRoute.types.js.map +1 -0
  324. package/dist/node/lib/A-ServerRoute/A-ServerRoute.types.mjs +3 -0
  325. package/dist/node/lib/A-ServerRoute/A-ServerRoute.types.mjs.map +1 -0
  326. package/dist/node/lib/A-ServerRouter/A-ServerRouter.component.d.mts +84 -0
  327. package/dist/node/lib/A-ServerRouter/A-ServerRouter.component.d.ts +84 -0
  328. package/dist/node/lib/A-ServerRouter/A-ServerRouter.component.js +194 -0
  329. package/dist/node/lib/A-ServerRouter/A-ServerRouter.component.js.map +1 -0
  330. package/dist/node/lib/A-ServerRouter/A-ServerRouter.component.mjs +184 -0
  331. package/dist/node/lib/A-ServerRouter/A-ServerRouter.component.mjs.map +1 -0
  332. package/dist/node/lib/A-ServerRouter/A-ServerRouter.constants.d.mts +6 -0
  333. package/dist/node/lib/A-ServerRouter/A-ServerRouter.constants.d.ts +6 -0
  334. package/dist/node/lib/A-ServerRouter/A-ServerRouter.constants.js +10 -0
  335. package/dist/node/lib/A-ServerRouter/A-ServerRouter.constants.js.map +1 -0
  336. package/dist/node/lib/A-ServerRouter/A-ServerRouter.constants.mjs +10 -0
  337. package/dist/node/lib/A-ServerRouter/A-ServerRouter.constants.mjs.map +1 -0
  338. package/dist/node/lib/A-ServerRouter/A-ServerRouter.meta.d.mts +16 -0
  339. package/dist/node/lib/A-ServerRouter/A-ServerRouter.meta.d.ts +16 -0
  340. package/dist/node/lib/A-ServerRouter/A-ServerRouter.meta.js +40 -0
  341. package/dist/node/lib/A-ServerRouter/A-ServerRouter.meta.js.map +1 -0
  342. package/dist/node/lib/A-ServerRouter/A-ServerRouter.meta.mjs +39 -0
  343. package/dist/node/lib/A-ServerRouter/A-ServerRouter.meta.mjs.map +1 -0
  344. package/dist/node/lib/A-ServerRouter/A-ServerRouter.types.d.mts +24 -0
  345. package/dist/node/lib/A-ServerRouter/A-ServerRouter.types.d.ts +24 -0
  346. package/dist/node/lib/A-ServerRouter/A-ServerRouter.types.js +4 -0
  347. package/dist/node/lib/A-ServerRouter/A-ServerRouter.types.js.map +1 -0
  348. package/dist/node/lib/A-ServerRouter/A-ServerRouter.types.mjs +3 -0
  349. package/dist/node/lib/A-ServerRouter/A-ServerRouter.types.mjs.map +1 -0
  350. package/dist/node/lib/A-ServerRouter/A-ServerRouterDefine.decorator.d.mts +16 -0
  351. package/dist/node/lib/A-ServerRouter/A-ServerRouterDefine.decorator.d.ts +16 -0
  352. package/dist/node/lib/A-ServerRouter/A-ServerRouterDefine.decorator.js +25 -0
  353. package/dist/node/lib/A-ServerRouter/A-ServerRouterDefine.decorator.js.map +1 -0
  354. package/dist/node/lib/A-ServerRouter/A-ServerRouterDefine.decorator.mjs +24 -0
  355. package/dist/node/lib/A-ServerRouter/A-ServerRouterDefine.decorator.mjs.map +1 -0
  356. package/dist/node/lib/A-ServerStatic/A-ServerStatic.component.d.mts +65 -0
  357. package/dist/node/lib/A-ServerStatic/A-ServerStatic.component.d.ts +65 -0
  358. package/dist/node/lib/A-ServerStatic/A-ServerStatic.component.js +260 -0
  359. package/dist/node/lib/A-ServerStatic/A-ServerStatic.component.js.map +1 -0
  360. package/dist/node/lib/A-ServerStatic/A-ServerStatic.component.mjs +248 -0
  361. package/dist/node/lib/A-ServerStatic/A-ServerStatic.component.mjs.map +1 -0
  362. package/dist/node/lib/A-ServerStatic/A-ServerStatic.context.d.mts +110 -0
  363. package/dist/node/lib/A-ServerStatic/A-ServerStatic.context.d.ts +110 -0
  364. package/dist/node/lib/A-ServerStatic/A-ServerStatic.context.js +180 -0
  365. package/dist/node/lib/A-ServerStatic/A-ServerStatic.context.js.map +1 -0
  366. package/dist/node/lib/A-ServerStatic/A-ServerStatic.context.mjs +179 -0
  367. package/dist/node/lib/A-ServerStatic/A-ServerStatic.context.mjs.map +1 -0
  368. package/dist/node/lib/A-ServerStatic/A-ServerStatic.types.d.mts +8 -0
  369. package/dist/node/lib/A-ServerStatic/A-ServerStatic.types.d.ts +8 -0
  370. package/dist/node/lib/A-ServerStatic/A-ServerStatic.types.js +4 -0
  371. package/dist/node/lib/A-ServerStatic/A-ServerStatic.types.js.map +1 -0
  372. package/dist/node/lib/A-ServerStatic/A-ServerStatic.types.mjs +3 -0
  373. package/dist/node/lib/A-ServerStatic/A-ServerStatic.types.mjs.map +1 -0
  374. package/dist/node/middlewares/A-ServerCORS/A_ServerCORS.component.d.mts +29 -0
  375. package/dist/node/middlewares/A-ServerCORS/A_ServerCORS.component.d.ts +29 -0
  376. package/dist/node/middlewares/A-ServerCORS/A_ServerCORS.component.js +62 -0
  377. package/dist/node/middlewares/A-ServerCORS/A_ServerCORS.component.js.map +1 -0
  378. package/dist/node/middlewares/A-ServerCORS/A_ServerCORS.component.mjs +50 -0
  379. package/dist/node/middlewares/A-ServerCORS/A_ServerCORS.component.mjs.map +1 -0
  380. package/dist/node/middlewares/A-ServerCORS/A_ServerCORS.constants.d.mts +5 -0
  381. package/dist/node/middlewares/A-ServerCORS/A_ServerCORS.constants.d.ts +5 -0
  382. package/dist/node/middlewares/A-ServerCORS/A_ServerCORS.constants.js +14 -0
  383. package/dist/node/middlewares/A-ServerCORS/A_ServerCORS.constants.js.map +1 -0
  384. package/dist/node/middlewares/A-ServerCORS/A_ServerCORS.constants.mjs +14 -0
  385. package/dist/node/middlewares/A-ServerCORS/A_ServerCORS.constants.mjs.map +1 -0
  386. package/dist/node/middlewares/A-ServerCORS/A_ServerCORS.types.d.mts +9 -0
  387. package/dist/node/middlewares/A-ServerCORS/A_ServerCORS.types.d.ts +9 -0
  388. package/dist/node/middlewares/A-ServerCORS/A_ServerCORS.types.js +4 -0
  389. package/dist/node/middlewares/A-ServerCORS/A_ServerCORS.types.js.map +1 -0
  390. package/dist/node/middlewares/A-ServerCORS/A_ServerCORS.types.mjs +3 -0
  391. package/dist/node/middlewares/A-ServerCORS/A_ServerCORS.types.mjs.map +1 -0
  392. package/dist/node/repositories/A-EntityRepository/A-EntityRepository.component.d.mts +24 -0
  393. package/dist/node/repositories/A-EntityRepository/A-EntityRepository.component.d.ts +24 -0
  394. package/dist/node/repositories/A-EntityRepository/A-EntityRepository.component.js +94 -0
  395. package/dist/node/repositories/A-EntityRepository/A-EntityRepository.component.js.map +1 -0
  396. package/dist/node/repositories/A-EntityRepository/A-EntityRepository.component.mjs +82 -0
  397. package/dist/node/repositories/A-EntityRepository/A-EntityRepository.component.mjs.map +1 -0
  398. package/dist/node/repositories/A-EntityRepository/A-EntityRepository.error.d.mts +2 -0
  399. package/dist/node/repositories/A-EntityRepository/A-EntityRepository.error.d.ts +2 -0
  400. package/dist/node/repositories/A-EntityRepository/A-EntityRepository.error.js +4 -0
  401. package/dist/node/repositories/A-EntityRepository/A-EntityRepository.error.js.map +1 -0
  402. package/dist/node/repositories/A-EntityRepository/A-EntityRepository.error.mjs +3 -0
  403. package/dist/node/repositories/A-EntityRepository/A-EntityRepository.error.mjs.map +1 -0
  404. package/dist/node/repositories/A-EntityRepository/A-EntityRepository.types.d.mts +2 -0
  405. package/dist/node/repositories/A-EntityRepository/A-EntityRepository.types.d.ts +2 -0
  406. package/dist/node/repositories/A-EntityRepository/A-EntityRepository.types.js +4 -0
  407. package/dist/node/repositories/A-EntityRepository/A-EntityRepository.types.js.map +1 -0
  408. package/dist/node/repositories/A-EntityRepository/A-EntityRepository.types.mjs +3 -0
  409. package/dist/node/repositories/A-EntityRepository/A-EntityRepository.types.mjs.map +1 -0
  410. package/examples/simple-server/commands/SignIn.command.ts +17 -1
  411. package/examples/simple-server/components/Test.controller.ts +8 -7
  412. package/examples/simple-server/components/Users.repository.ts +28 -26
  413. package/examples/simple-server/concept.ts +56 -66
  414. package/examples/simple-server/entities/User/User.entity.ts +17 -7
  415. package/jest.config.ts +24 -10
  416. package/package.json +267 -25
  417. package/src/channels/A-Http/A-Http.channel.constants.ts +6 -7
  418. package/src/channels/A-Http/A-Http.channel.error.ts +2 -2
  419. package/src/channels/A-Http/A-Http.channel.ts +76 -125
  420. package/src/channels/A-Http/A-Http.channel.types.ts +6 -3
  421. package/src/channels/A-Websockets/A-Websockets.channel.ts +1 -1
  422. package/src/{components → controllers}/A-CommandController/A-CommandController.component.ts +16 -10
  423. package/src/{components → controllers}/A-EntityController/A-EntityController.component.ts +24 -28
  424. package/src/{components → controllers}/A-ListingController/A-ListingController.component.ts +10 -12
  425. package/src/{components → controllers}/A-ServerHealthMonitor/A-ServerHealthMonitor.component.ts +11 -11
  426. package/src/index.ts +58 -63
  427. package/src/lib/A-Request/A-HttpRequestData.context.ts +30 -0
  428. package/src/lib/A-Request/A-HttpServerRequest.context.ts +103 -0
  429. package/src/lib/A-Request/A-Request.constants.ts +30 -0
  430. package/src/lib/A-Request/A-Request.entity.ts +844 -0
  431. package/src/lib/A-Request/A-Request.env.ts +50 -0
  432. package/src/lib/A-Request/A-Request.error.ts +11 -0
  433. package/src/lib/A-Request/A-Request.helper.ts +276 -0
  434. package/src/lib/A-Request/A-Request.types.ts +284 -0
  435. package/src/lib/A-Request/README.md +567 -0
  436. package/src/lib/A-Response/A-Response.constants.ts +24 -0
  437. package/src/lib/A-Response/A-Response.entity.ts +751 -0
  438. package/src/lib/A-Response/A-Response.error.ts +6 -0
  439. package/src/lib/A-Response/A-Response.types.ts +127 -0
  440. package/src/lib/A-Response/README.md +793 -0
  441. package/src/lib/A-Server/A-HttpServer.constants.ts +9 -0
  442. package/src/lib/A-Server/A-HttpServer.container.ts +256 -0
  443. package/src/lib/A-Server/A-HttpServer.error.ts +165 -0
  444. package/src/lib/A-Server/A-HttpServer.types.ts +37 -0
  445. package/src/{context/A-Server/A_Server.context.ts → lib/A-Server/A-Server.context.ts} +6 -7
  446. package/src/lib/A-Server/A-Server.error.ts +26 -0
  447. package/src/{components/A-ServerError/A-ServerError.types.ts → lib/A-Server/A-Server.types.ts} +8 -0
  448. package/src/{components/A-Controller/A-Controller.component.ts → lib/A-ServerController/A-ServerController.component.ts} +5 -5
  449. package/src/{entities/A_EntityList/A_EntityList.entity.ts → lib/A-ServerEntityList/A-EntityList.entity.ts} +2 -2
  450. package/src/{entities/A_EntityList/A_EntityList.entity.types.ts → lib/A-ServerEntityList/A-EntityList.types.ts} +2 -2
  451. package/src/{context/A-ListQueryFilter/A_ListQueryFilter.context.ts → lib/A-ServerListQuery/A-ServerListQueryFilter.context.ts} +1 -1
  452. package/src/lib/A-ServerLogger/A-ServerLogger.component.ts +121 -0
  453. package/src/lib/A-ServerLogger/A-ServerLogger.types.ts +13 -0
  454. package/src/lib/A-ServerMiddleware/A-ServerMiddleware.component.ts +17 -0
  455. package/src/{components → lib}/A-ServerProxy/A-ServerProxy.component.ts +17 -12
  456. package/src/{context/A-ProxyConfig/A_ProxyConfig.constants.ts → lib/A-ServerProxy/A-ServerProxy.constants.ts} +1 -1
  457. package/src/{context/A-ProxyConfig/A_ProxyConfig.context.ts → lib/A-ServerProxy/A-ServerProxy.context.ts} +4 -4
  458. package/src/{context/A-ProxyConfig/A_ProxyConfig.types.ts → lib/A-ServerProxy/A-ServerProxy.types.ts} +4 -4
  459. package/src/lib/A-ServerRoute/A-ServerRoute.constants.ts +20 -0
  460. package/src/lib/A-ServerRoute/A-ServerRoute.entity.ts +48 -0
  461. package/src/lib/A-ServerRoute/A-ServerRoute.types.ts +6 -0
  462. package/src/{components/A-Router/A-Router.component.ts → lib/A-ServerRouter/A-ServerRouter.component.ts} +77 -97
  463. package/src/lib/A-ServerRouter/A-ServerRouter.constants.ts +8 -0
  464. package/src/lib/A-ServerRouter/A-ServerRouter.meta.ts +48 -0
  465. package/src/lib/A-ServerRouter/A-ServerRouter.types.ts +27 -0
  466. package/src/lib/A-ServerRouter/A-ServerRouterDefine.decorator.ts +37 -0
  467. package/src/{components/A-StaticLoader/A-StaticLoader.component.ts → lib/A-ServerStatic/A-ServerStatic.component.ts} +73 -54
  468. package/src/{context/A-StaticConfig/A-StaticConfig.context.ts → lib/A-ServerStatic/A-ServerStatic.context.ts} +16 -6
  469. package/src/{components → middlewares}/A-ServerCORS/A_ServerCORS.component.ts +16 -13
  470. package/src/{components/A-ServerCORS/A_ServerCORS.component.defaults.ts → middlewares/A-ServerCORS/A_ServerCORS.constants.ts} +2 -2
  471. package/src/{components → repositories}/A-EntityRepository/A-EntityRepository.component.ts +39 -30
  472. package/tests/A-HttpChannel.test.ts +41 -48
  473. package/tests/A-HttpServerError.test.ts +204 -0
  474. package/tests/A-Request.test.ts +351 -0
  475. package/tsconfig.json +40 -50
  476. package/tsup.config.ts +111 -13
  477. package/dist/index.d.mts +0 -855
  478. package/dist/index.d.ts +0 -855
  479. package/dist/index.js +0 -2179
  480. package/dist/index.js.map +0 -1
  481. package/dist/index.mjs +0 -2144
  482. package/dist/index.mjs.map +0 -1
  483. package/examples/microservices-server/components/controllers/Statistics.controller.ts +0 -18
  484. package/examples/microservices-server/components/repositories/Memory.repository.ts +0 -66
  485. package/examples/microservices-server/concept.ts +0 -43
  486. package/examples/microservices-server/context/MemoryStore.context.ts +0 -31
  487. package/examples/microservices-server/entities/Order.entity.ts +0 -7
  488. package/examples/microservices-server/entities/User.entity.ts +0 -8
  489. package/src/components/A-Router/A-Router.component.types.ts +0 -38
  490. package/src/components/A-ServerError/A-ServerError.class.ts +0 -98
  491. package/src/components/A-ServerLogger/A_ServerLogger.component.ts +0 -194
  492. package/src/components/A-ServerLogger/A_ServerLogger.component.types.ts +0 -14
  493. package/src/containers/A-Service/A-Service.container.ts +0 -218
  494. package/src/containers/A-Service/A-Service.container.types.ts +0 -46
  495. package/src/context/A-EntityFactory/A-EntityFactory.context.ts +0 -163
  496. package/src/context/A-EntityFactory/A-EntityFactory.context.types.ts +0 -11
  497. package/src/context/A-HttpChannel/A-HttpChannel.context.ts +0 -36
  498. package/src/context/A-Server/A_Server.context.types.ts +0 -9
  499. package/src/entities/A-Request/A-Request.entity.ts +0 -163
  500. package/src/entities/A-Request/A-Request.entity.types.ts +0 -41
  501. package/src/entities/A-Response/A-Response.entity.ts +0 -194
  502. package/src/entities/A-Response/A-Response.entity.types.ts +0 -26
  503. package/src/entities/A-Route/A-Route.entity.ts +0 -117
  504. package/tests/A-Service.test.ts +0 -18
  505. /package/src/{components → controllers}/A-EntityController/A-EntityController.component.types.ts +0 -0
  506. /package/src/{components/A-Controller/A-Controller.component.types.ts → controllers/A-ListingController/A-ListingController.types.ts} +0 -0
  507. /package/src/{components/A-ServerHealthMonitor/A-ServerHealthMonitor.component.types.ts → controllers/A-ServerHealthMonitor/A-ServerHealthMonitor.types.ts} +0 -0
  508. /package/src/{components/A-EntityRepository/A-EntityRepository.error.ts → lib/A-Response/A-Response.env.ts} +0 -0
  509. /package/src/{components/A-EntityRepository/A-EntityRepository.types.ts → lib/A-ServerController/A-ServerController.types.ts} +0 -0
  510. /package/src/{components → lib}/A-ServerLogger/A-ServerLogger.constants.ts +0 -0
  511. /package/src/{components/A-ListingController/A-ListingController.component.types.ts → lib/A-ServerMiddleware/A-ServerMiddleware.constants.ts} +0 -0
  512. /package/src/{components/A-ServerError/A-ServerError.constants.ts → lib/A-ServerMiddleware/A-ServerMiddleware.types.ts} +0 -0
  513. /package/src/{components/A-StaticLoader/A-StaticLoader.component.types.ts → lib/A-ServerStatic/A-ServerStatic.types.ts} +0 -0
  514. /package/src/{components/A-ServerCORS/A_ServerCORS.component.types.ts → middlewares/A-ServerCORS/A_ServerCORS.types.ts} +0 -0
  515. /package/src/{context/A-StaticConfig/A-StaticConfig.context.types.ts → repositories/A-EntityRepository/A-EntityRepository.error.ts} +0 -0
  516. /package/src/{entities/A-Route/A-Route.entity.types.ts → repositories/A-EntityRepository/A-EntityRepository.types.ts} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/lib/A-Request/A-Request.entity.ts"],"names":[],"mappings":"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","file":"A-Request.entity.mjs","sourcesContent":["import type { IncomingHttpHeaders, IncomingMessage } from \"http\";\nimport {\n A_Context,\n A_Entity,\n A_Error,\n A_Feature,\n A_IdentityHelper,\n A_Inject,\n A_Scope,\n ASEID,\n} from '@adaas/a-concept';\nimport {\n A_Request_BodyType,\n A_Request_FileUpload,\n A_Request_Init,\n A_Request_Listener,\n A_Request_Options,\n A_Request_Serialized,\n A_RequestFeatureNames,\n} from \"./A-Request.types\";\nimport { A_HttpServerError } from \"@adaas/a-server/server/A-HttpServer.error\";\nimport { A_HttpServerRequestMethod } from \"@adaas/a-server/server/A-HttpServer.types\";\nimport { A_RequestFeatures } from \"./A-Request.constants\";\nimport { A_RequestHelper } from \"./A-Request.helper\";\nimport { A_RequestEnvVariables, A_RequestEnvVariablesType } from \"./A-Request.env\";\nimport { A_HttpServerRequestContext } from \"./A-HttpServerRequest.context\";\nimport { A_HttpRequestData } from \"./A-HttpRequestData.context\";\nimport { A_RequestError } from \"./A-Request.error\";\nimport { A_ScheduleObject } from \"@adaas/a-utils/a-schedule\";\nimport { A_Config } from \"@adaas/a-utils/a-config\";\nimport { A_ServerRoute } from \"@adaas/a-server/route/A-ServerRoute.entity\";\n\n\n\nexport class A_Request<\n _ReqBodyType = any,\n _ParamsType extends Record<string, string> = any,\n _QueryType = any,\n>\n extends A_Entity<\n A_Request_Init,\n A_Request_Serialized<_ReqBodyType, _ParamsType, _QueryType>\n > {\n\n static get concept(): string {\n return 'a-server';\n }\n\n // =============================================\n // Core Properties\n // =============================================\n\n /**\n * Request processing status\n */\n protected _listeners: Map<A_RequestFeatureNames, Set<A_Request_Listener>> = new Map();\n\n // =============================================\n // Cookie Management\n // =============================================\n /**\n * Parsed cookies from request headers\n */\n private _cookies!: Record<string, string>;\n\n // ============================================\n // Data Management \n // ============================================\n /**\n * Request body type\n */\n private _bodyType?: A_Request_BodyType;\n /**\n * Request body data\n */\n private _body!: _ReqBodyType;\n private _req!: IncomingMessage;\n\n private _timeout: A_ScheduleObject | undefined;\n\n // =============================================\n // File Upload Handling\n // =============================================\n /**\n * Uploaded files from multipart requests\n */\n private _files!: A_Request_FileUpload[];\n\n // =============================================\n // Request Metadata\n // =============================================\n\n /**\n * User agent string from request headers\n */\n private _userAgent?: string;\n\n /**\n * Content length in bytes\n */\n private _contentLength?: number;\n\n // =============================================\n // Configuration\n // =============================================\n /**\n * Request processing configuration options\n */\n private _options!: Required<A_Request_Options>\n\n private _routeDefinition?: A_ServerRoute;\n\n\n /**\n * A_Request - Comprehensive HTTP Request Processing Entity\n * \n * This class provides a complete wrapper around Node.js IncomingMessage with advanced features:\n * - Automatic body parsing (JSON, form-data, multipart, raw)\n * - Cookie and session management\n * - File upload handling with easy access methods\n * - Request validation\n * - Middleware support\n * - Type-safe parameter extraction\n * - Request timing and metrics\n * \n * @example\n * ```typescript\n * const request = new A_Request({\n * id: 'req-123',\n * request: incomingMessage,\n * scope: 'api'\n * }, {\n * enableFileUploads: true,\n * maxBodySize: 50 * 1024 * 1024 // 50MB for file uploads\n * });\n * \n * await request.init();\n * \n * // Access parsed body\n * const userData = request.body;\n * \n * // Get typed parameters\n * const userId = request.params.id;\n * \n * // Handle file uploads\n * if (request.hasFiles()) {\n * const avatar = request.getFile('avatar');\n * if (avatar) {\n * console.log(`Uploaded file: ${avatar.filename}`);\n * console.log(`File size: ${avatar.size} bytes`);\n * console.log(`File type: ${avatar.mimetype}`);\n * \n * // Access file buffer for processing\n * const fileBuffer = avatar.buffer;\n * // Save to disk, process, etc.\n * }\n * \n * // Get all files for a specific field\n * const documents = request.getFiles('documents');\n * for (const doc of documents) {\n * // Process each document...\n * }\n * }\n * \n * // Check specific files\n * if (request.hasFile('profilePicture')) {\n * const pic = request.getFile('profilePicture');\n * // Process profile picture...\n * }\n * ```\n */\n constructor(params: A_Request_Init, options?: A_Request_Options) {\n super(params);\n this._options = {\n maxBodySize: 10 * 1024 * 1024, // 10MB default\n timeout: 30000, // 30 seconds\n encoding: 'utf8',\n parseCookies: true,\n parseQuery: true,\n parseBody: true,\n enableFileUploads: false,\n strictValidation: false,\n ...(options || {})\n }\n }\n\n /**\n * Creates A_Request entity from initialization data\n * \n * @param newEntity \n */\n fromNew(newEntity: A_Request_Init): void {\n this.aseid = new ASEID({\n concept: (this.constructor as typeof A_Request).concept,\n scope: newEntity.scope,\n entity: (this.constructor as typeof A_Request).entity,\n shard: newEntity.shard,\n id: newEntity.id\n });\n\n this._req = newEntity.request;\n }\n\n\n /**\n * Core HTTP request object from Node.js\n */\n get original(): IncomingMessage {\n return this._req;\n }\n /**\n * Parsed request body data\n */\n get body(): _ReqBodyType {\n return this._body;\n }\n /**\n * URL route parameters (e.g., /users/:id)\n */\n get params(): _ParamsType {\n\n console.log('Extracting params using route definition:', this.url);\n console.log('Extracting params using route definition:', this._routeDefinition?.path);\n\n return A_RequestHelper.extractParams(this.url,\n this._routeDefinition?.path || ''\n\n ) as _ParamsType;\n }\n /**\n * Query string parameters\n */\n get query(): _QueryType {\n return A_RequestHelper.extractQuery(this.url) as _QueryType;\n }\n /**\n * Gets the parsed cookies\n */\n get cookies(): Record<string, string> {\n if (!this._cookies) {\n this._cookies = A_RequestHelper.parseCookies(this.headers['cookie']);\n }\n\n return this._cookies;\n }\n /**\n * Gets the request URL\n */\n get url(): string {\n return this.original.url!;\n }\n /**\n * Gets the HTTP method\n */\n get method(): A_HttpServerRequestMethod {\n return (String(this.original.method).toUpperCase() as A_HttpServerRequestMethod) || 'DEFAULT';\n }\n /**\n * Gets the request headers\n */\n get headers(): IncomingHttpHeaders {\n return this.original.headers;\n }\n /**\n * Gets the timestamp when the request was started\n */\n get startedAt(): Date | undefined {\n const timeId = A_IdentityHelper.parseTimeId(this.aseid.id.split('-')[0]);\n return timeId ? new Date(timeId.timestamp) : undefined;\n }\n /**\n * Gets uploaded files\n */\n get files(): A_Request_FileUpload[] {\n return this._files || [];\n }\n /**\n * Gets user agent string\n */\n get userAgent(): string | undefined {\n return this.headers?.['user-agent'] || ''\n }\n /**\n * Gets content length\n */\n get contentLength(): number {\n return this.headers?.['content-length'] ? parseInt(this.headers['content-length'], 10) : 0;\n }\n /**\n * Check if request is secure (HTTPS)\n */\n get isSecure(): boolean {\n return this.original.socket && 'encrypted' in this.original.socket;\n }\n /**\n * Check if request is from mobile device\n */\n get isMobile(): boolean {\n const userAgent = this._userAgent?.toLowerCase() || '';\n return /mobile|android|iphone|ipad|phone/i.test(userAgent);\n }\n /**\n * Get request size in bytes\n */\n get size(): number {\n return this._contentLength || 0;\n }\n /**\n * Gets content type from headers\n */\n get contentType(): string | undefined {\n return this.headers['content-type'] || undefined;\n }\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n /**\n * Pipes request stream to destination\n */\n pipe(\n destination: NodeJS.WritableStream,\n options?: { end?: boolean | undefined; }\n ): NodeJS.WritableStream {\n return this.original.pipe(destination, options);\n }\n /**\n * Get a file by field name\n */\n getFile(fieldName: string): A_Request_FileUpload | undefined {\n return this._files?.find(file => file.fieldName === fieldName);\n }\n\n /**\n * Get all files for a specific field name\n */\n getFiles(fieldName: string): A_Request_FileUpload[] {\n return this._files?.filter(file => file.fieldName === fieldName) || [];\n }\n\n /**\n * Check if request has any files\n */\n hasFiles(): boolean {\n return this._files && this._files.length > 0;\n }\n\n /**\n * Check if request has a file with specific field name\n */\n hasFile(fieldName: string): boolean {\n return this._files?.some(file => file.fieldName === fieldName) || false;\n }\n\n /**\n * Get total size of all uploaded files\n */\n getTotalFileSize(): number {\n return this._files?.reduce((total, file) => total + file.size, 0) || 0;\n }\n\n /**\n * Get a cookie value\n */\n getCookie(name: string): string | undefined {\n return this._cookies[name];\n }\n /**\n * Check if request has a specific cookie\n */\n hasCookie(name: string): boolean {\n return name in this._cookies;\n }\n /**\n * Check if request accepts specific content type\n */\n accepts(contentType: string): boolean {\n const acceptHeader = this.headers.accept || '';\n return acceptHeader.includes(contentType) || acceptHeader.includes('*/*');\n }\n /**\n * Get request fingerprint for caching/identification\n */\n getFingerprint(): string {\n const components = [\n this.method,\n this.url,\n this._userAgent,\n JSON.stringify(this.body)\n ];\n\n return Buffer.from(components.join('|')).toString('base64');\n }\n\n // -------------------------------------------------------------------------- \n // A-Request Event-Emitter methods\n // --------------------------------------------------------------------------\n /**\n * Registers an event listener for a specific event\n * \n * @param event \n * @param listener \n */\n on(event: A_RequestFeatureNames, listener: A_Request_Listener) {\n if (!this._listeners.has(event)) {\n this._listeners.set(event, new Set());\n }\n this._listeners.get(event)!.add(listener);\n }\n /**\n * Removes an event listener for a specific event\n * \n * @param event \n * @param listener \n */\n off(event: A_RequestFeatureNames, listener: A_Request_Listener) {\n this._listeners.get(event)?.delete(listener);\n }\n /**\n * Emits an event to all registered listeners\n * \n * @param event \n */\n emit(event: A_RequestFeatureNames) {\n this._listeners.get(event)?.forEach(async listener => {\n listener(this);\n });\n }\n\n /**\n * Allows to use a route definition for this request\n * \n * @param route \n */\n useRoute(route: A_ServerRoute): void {\n this._routeDefinition = route;\n }\n\n\n clearTimeout(): void {\n this._timeout?.clear();\n }\n\n /**\n * Initialize the request - parse cookies, query, body etc.\n */\n async load(): Promise<void> {\n\n // this.original.on('close', this.handleClose.bind(this));\n\n try {\n\n await this.call(A_RequestFeatures.onInit);\n\n await new Promise<void>((resolve, reject) => {\n const onData = this.handleData.bind(this);\n const onEnd = () => {\n cleanup();\n resolve();\n };\n const onError = (err: Error) => {\n cleanup();\n reject(err);\n };\n\n const cleanup = () => {\n this.original.off('data', onData);\n this.original.off('end', onEnd);\n this.original.off('error', onError);\n };\n\n this.original.on('data', onData);\n this.original.on('end', onEnd);\n this.original.on('error', onError);\n });\n\n await this.handleEnd();\n\n } catch (error) {\n\n const targetError = error instanceof A_HttpServerError\n ? error\n : new A_HttpServerError({\n status: 500,\n description: 'An error occurred while processing the request.',\n originalError: error\n });\n\n await this.fail(targetError);\n }\n\n this.original.on('error', err => {\n this.fail(new A_HttpServerError({\n status: 500,\n description: `Request error: ${err.message}`,\n originalError: err\n }));\n });\n }\n\n\n async validate(): Promise<void> {\n try {\n await this.call(A_RequestFeatures.onValidate);\n } catch (error) {\n const targetError = error instanceof A_HttpServerError\n ? error\n : new A_HttpServerError({\n status: 400,\n description: ` Request Validation Failed: ${error instanceof A_Error ? error.message : 'Invalid request.'}`,\n originalError: error\n });\n\n await this.fail(targetError);\n }\n }\n /**\n * Destroy the request A-Entity with cleanup\n * \n * @returns \n */\n async destroy(): Promise<any> {\n const targetError = A_Context.scope(this)?.resolve(A_Error);\n\n if (!this.original.destroyed) {\n this.original.destroy(targetError);\n this.original.removeAllListeners();\n\n this._listeners.clear();\n\n return super.destroy();\n }\n }\n\n /**\n * Handles request failure - registers error, emits event, and destroys request\n * \n * [!] Destroys the request after handling the failure.\n * \n * @param err \n */\n async fail(err?: A_HttpServerError): Promise<void> {\n console.log('Request failed with error:', this.method, this.url, err?.message);\n\n if (err)\n A_Context\n .scope(this)\n .register(err);\n\n this._timeout?.clear();\n\n await this.call(A_RequestFeatures.onError);\n\n await this.destroy();\n }\n\n\n // ======================================================================================\n // Internal handlers for request events\n // ======================================================================================\n /**\n * Internal helper method to handle incoming data chunks\n * It creates a new scope for each data chunk, inherits the parent scope,\n * and calls the onData feature with the new scope.\n * \n * [!] This method ensures that each data chunk is processed in isolation, \n * preventing side effects between chunks.\n * \n * @param data \n */\n protected async handleData(data: Buffer): Promise<void> {\n const chunk = new A_HttpRequestData(data);\n\n const scope = new A_Scope({\n name: `${this.aseid.toString()}-data-chunk`,\n fragments: [chunk],\n })\n .inherit(A_Context.scope(this));\n\n try {\n\n scope.inherit(A_Context.scope(this));\n\n await this.call(A_RequestFeatures.onData, scope);\n\n scope.destroy();\n\n } catch (error) {\n\n scope.destroy();\n\n await this.fail(new A_HttpServerError({\n status: 500,\n description: `Request data chunk error: ${error instanceof A_Error ? error.message : 'Unable to process request data chunk.'}`,\n originalError: error\n }));\n }\n }\n\n /**\n * Handles request close event\n * \n * This method is called when the request is closed prematurely.\n * It triggers the onClose feature and handles any errors that occur during processing.\n * \n */\n protected async handleClose(): Promise<void> {\n try {\n await this.call(A_RequestFeatures.onClose);\n } catch (error) {\n\n await this.fail(new A_HttpServerError({\n status: 499,\n description: `Request closed error: ${error instanceof A_Error ? error.message : 'Request was closed.'}`,\n originalError: error\n }));\n }\n }\n\n /**\n * Handles request end event\n * \n * This method is called when the request has finished sending data.\n * It triggers the onEnd feature and handles any errors that occur during processing.\n */\n protected async handleEnd(): Promise<void> {\n try {\n\n await this.call(A_RequestFeatures.onEnd);\n\n } catch (error) {\n await this.fail(new A_HttpServerError({\n status: 500,\n description: `Request processing error: ${error instanceof A_Error ? error.message : 'Unable to process request.'}`,\n originalError: error\n }));\n }\n }\n\n /**\n * Handles request timeout event\n * \n * This method is called when the request processing exceeds the configured timeout.\n * It triggers the onTimeout feature and fails the request with a timeout error.\n */\n protected async handleTimeout(): Promise<void> {\n try {\n await this.call(A_RequestFeatures.onTimeout);\n\n throw new A_HttpServerError({\n status: 503,\n description: `Request processing take too long and timed out. Current timeout is set to ${this._options.timeout} ms.`,\n })\n\n } catch (error) {\n\n const targetError = error instanceof A_HttpServerError\n ? error\n : new A_HttpServerError({\n status: 503,\n description: `Request timeout error: ${error instanceof A_Error ? error.message : 'Request timed out.'}`,\n originalError: error\n });\n\n await this.fail(targetError);\n }\n }\n\n\n\n\n // ======================================================================================\n // A-Request Feature Extensions\n // ======================================================================================\n\n @A_Feature.Extend()\n /**\n * Hook called during initialization\n * \n * Default Behavior: Starts request processing timer and sets up timeout handling.\n */\n async [A_RequestFeatures.onInit](\n @A_Inject(A_Config) config: A_Config<['A_SERVER_REQUEST_TIMEOUT']>,\n @A_Inject(A_HttpServerRequestContext) context: A_HttpServerRequestContext,\n ...args: any[]\n ): Promise<void> {\n\n context.startProcessing();\n\n const ms = Number(config?.get('A_SERVER_REQUEST_TIMEOUT')\n || A_RequestEnvVariables.A_SERVER_REQUEST_TIMEOUT);\n\n this._timeout = new A_ScheduleObject(ms, this.handleTimeout.bind(this), { resolveOnClear: true });\n }\n\n\n @A_Feature.Extend({\n before: /.*/\n })\n /**\n * Hook called on receiving data chunk\n * \n * Default Behavior: Accumulates data chunks into context buffers and checks for max body size.\n */\n async [A_RequestFeatures.onData](\n @A_Inject(A_HttpServerRequestContext) context: A_HttpServerRequestContext,\n @A_Inject(A_HttpRequestData) chunk: A_HttpRequestData,\n ...args: any[]\n ): Promise<void> {\n\n if (context.length + chunk.length > this._options.maxBodySize!) {\n throw new A_RequestError(\n A_RequestError.RequestBodyParsingError,\n `Request body too large. Max size is ${this._options.maxBodySize} bytes.`\n );\n }\n\n context.buffers.push(chunk.data);\n if (!context.data)\n context.data = '';\n\n context.data += chunk.toString(this._options.encoding as BufferEncoding);\n }\n\n @A_Feature.Extend({\n before: /.*/\n })\n /**\n * Hook called on request timeout\n * \n * Default Behavior: Stops request processing and emits timeout event.\n * \n * @param context \n * @param args \n */\n async [A_RequestFeatures.onTimeout](\n @A_Inject(A_HttpServerRequestContext) context: A_HttpServerRequestContext,\n ...args: any[]\n ): Promise<void> {\n context.stopProcessing();\n\n this._timeout?.clear();\n\n this.emit(A_RequestFeatures.onTimeout);\n }\n\n @A_Feature.Extend({\n before: /.*/\n })\n /**\n * Hook called on request close\n */\n async [A_RequestFeatures.onClose](\n @A_Inject(A_HttpServerRequestContext) context: A_HttpServerRequestContext,\n ...args: any[]\n ): Promise<void> {\n\n this.emit(A_RequestFeatures.onClose);\n }\n\n\n @A_Feature.Extend({\n after: /.*/\n })\n /**\n * Hook called on request error\n */\n async [A_RequestFeatures.onError](\n @A_Inject(A_Error) error: A_Error,\n @A_Inject(A_HttpServerRequestContext) context: A_HttpServerRequestContext,\n ...args: any[]\n ): Promise<void> {\n context.stopProcessing();\n\n this.emit(A_RequestFeatures.onError);\n }\n\n @A_Feature.Extend()\n /**\n * Hook called to parse request data\n */\n async [A_RequestFeatures.onEnd](\n @A_Inject(A_Config) config: A_Config<A_RequestEnvVariablesType>,\n @A_Inject(A_HttpServerRequestContext) context: A_HttpServerRequestContext,\n ...args: any[]\n ): Promise<void> {\n\n const { data, type } = A_RequestHelper.parseRequestBody(context);\n\n this._body = data;\n this._bodyType = type;\n }\n\n\n\n @A_Feature.Extend()\n /**\n * Hook called to validate request data\n */\n async [A_RequestFeatures.onValidate](\n @A_Inject(A_HttpServerRequestContext) context: A_HttpServerRequestContext,\n ...args: any[]\n ): Promise<void> {\n // Validate file uploads if multipart data detected\n if (!!this.contentType && this.contentType.includes('multipart/form-data') && !this._options.enableFileUploads) {\n throw new A_HttpServerError({\n status: 400,\n description: 'File uploads detected but not enabled. Set enableFileUploads: true in options.',\n });\n }\n }\n\n\n /**\n * Serialize request for logging/debugging\n */\n toJSON(): A_Request_Serialized {\n return {\n ...super.toJSON(),\n method: this.method,\n url: this.url,\n headers: this.headers,\n params: this.params,\n query: this.query,\n cookies: this._cookies,\n userAgent: this.userAgent,\n bodyType: this._bodyType,\n body: this._body,\n filesCount: this._files?.length || 0,\n totalFileSize: this.getTotalFileSize(),\n };\n }\n}"]}
@@ -0,0 +1,37 @@
1
+ declare const A_RequestEnvVariables: {
2
+ /**
3
+ * Default request timeout in milliseconds
4
+ */
5
+ readonly A_SERVER_REQUEST_TIMEOUT: 5000;
6
+ /**
7
+ * Maximum request body size in bytes
8
+ */
9
+ readonly A_SERVER_REQUEST_MAX_BODY_SIZE: number;
10
+ /**
11
+ * Default request encoding
12
+ */
13
+ readonly A_SERVER_REQUEST_DEFAULT_ENCODING: "utf8";
14
+ /**
15
+ * Enable automatic cookie parsing
16
+ */
17
+ readonly A_SERVER_REQUEST_PARSE_COOKIES: true;
18
+ /**
19
+ * Enable automatic query parameter parsing
20
+ */
21
+ readonly A_SERVER_REQUEST_PARSE_QUERY: true;
22
+ /**
23
+ * Enable automatic body parsing
24
+ */
25
+ readonly A_SERVER_REQUEST_PARSE_BODY: true;
26
+ /**
27
+ * Enable file upload handling
28
+ */
29
+ readonly A_SERVER_REQUEST_ENABLE_FILE_UPLOADS: false;
30
+ };
31
+ declare const A_RequestEnvVariablesArray: Array<keyof typeof A_RequestEnvVariables>;
32
+ /**
33
+ * Array of all possible fields in A_RequestEnvVariables
34
+ */
35
+ type A_RequestEnvVariablesType = Array<keyof typeof A_RequestEnvVariables>;
36
+
37
+ export { A_RequestEnvVariables, A_RequestEnvVariablesArray, type A_RequestEnvVariablesType };
@@ -0,0 +1,37 @@
1
+ declare const A_RequestEnvVariables: {
2
+ /**
3
+ * Default request timeout in milliseconds
4
+ */
5
+ readonly A_SERVER_REQUEST_TIMEOUT: 5000;
6
+ /**
7
+ * Maximum request body size in bytes
8
+ */
9
+ readonly A_SERVER_REQUEST_MAX_BODY_SIZE: number;
10
+ /**
11
+ * Default request encoding
12
+ */
13
+ readonly A_SERVER_REQUEST_DEFAULT_ENCODING: "utf8";
14
+ /**
15
+ * Enable automatic cookie parsing
16
+ */
17
+ readonly A_SERVER_REQUEST_PARSE_COOKIES: true;
18
+ /**
19
+ * Enable automatic query parameter parsing
20
+ */
21
+ readonly A_SERVER_REQUEST_PARSE_QUERY: true;
22
+ /**
23
+ * Enable automatic body parsing
24
+ */
25
+ readonly A_SERVER_REQUEST_PARSE_BODY: true;
26
+ /**
27
+ * Enable file upload handling
28
+ */
29
+ readonly A_SERVER_REQUEST_ENABLE_FILE_UPLOADS: false;
30
+ };
31
+ declare const A_RequestEnvVariablesArray: Array<keyof typeof A_RequestEnvVariables>;
32
+ /**
33
+ * Array of all possible fields in A_RequestEnvVariables
34
+ */
35
+ type A_RequestEnvVariablesType = Array<keyof typeof A_RequestEnvVariables>;
36
+
37
+ export { A_RequestEnvVariables, A_RequestEnvVariablesArray, type A_RequestEnvVariablesType };
@@ -0,0 +1,39 @@
1
+ 'use strict';
2
+
3
+ const A_RequestEnvVariables = {
4
+ /**
5
+ * Default request timeout in milliseconds
6
+ */
7
+ A_SERVER_REQUEST_TIMEOUT: 5e3,
8
+ /**
9
+ * Maximum request body size in bytes
10
+ */
11
+ A_SERVER_REQUEST_MAX_BODY_SIZE: 10 * 1024 * 1024,
12
+ // 10MB
13
+ /**
14
+ * Default request encoding
15
+ */
16
+ A_SERVER_REQUEST_DEFAULT_ENCODING: "utf8",
17
+ /**
18
+ * Enable automatic cookie parsing
19
+ */
20
+ A_SERVER_REQUEST_PARSE_COOKIES: true,
21
+ /**
22
+ * Enable automatic query parameter parsing
23
+ */
24
+ A_SERVER_REQUEST_PARSE_QUERY: true,
25
+ /**
26
+ * Enable automatic body parsing
27
+ */
28
+ A_SERVER_REQUEST_PARSE_BODY: true,
29
+ /**
30
+ * Enable file upload handling
31
+ */
32
+ A_SERVER_REQUEST_ENABLE_FILE_UPLOADS: false
33
+ };
34
+ const A_RequestEnvVariablesArray = Object.keys(A_RequestEnvVariables);
35
+
36
+ exports.A_RequestEnvVariables = A_RequestEnvVariables;
37
+ exports.A_RequestEnvVariablesArray = A_RequestEnvVariablesArray;
38
+ //# sourceMappingURL=A-Request.env.js.map
39
+ //# sourceMappingURL=A-Request.env.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/lib/A-Request/A-Request.env.ts"],"names":[],"mappings":";;AAEO,MAAM,qBAAA,GAAwB;AAAA;AAAA;AAAA;AAAA,EAKjC,wBAAA,EAA0B,GAAA;AAAA;AAAA;AAAA;AAAA,EAK1B,8BAAA,EAAgC,KAAK,IAAA,GAAO,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAK5C,iCAAA,EAAmC,MAAA;AAAA;AAAA;AAAA;AAAA,EAKnC,8BAAA,EAAgC,IAAA;AAAA;AAAA;AAAA;AAAA,EAKhC,4BAAA,EAA8B,IAAA;AAAA;AAAA;AAAA;AAAA,EAK9B,2BAAA,EAA6B,IAAA;AAAA;AAAA;AAAA;AAAA,EAK7B,oCAAA,EAAsC;AAE1C;AAGO,MAAM,0BAAA,GAA6B,MAAA,CAAO,IAAA,CAAK,qBAAqB","file":"A-Request.env.js","sourcesContent":["\n\nexport const A_RequestEnvVariables = {\n\n /**\n * Default request timeout in milliseconds\n */\n A_SERVER_REQUEST_TIMEOUT: 5000,\n\n /**\n * Maximum request body size in bytes\n */\n A_SERVER_REQUEST_MAX_BODY_SIZE: 10 * 1024 * 1024, // 10MB\n\n /**\n * Default request encoding\n */\n A_SERVER_REQUEST_DEFAULT_ENCODING: 'utf8',\n\n /**\n * Enable automatic cookie parsing\n */\n A_SERVER_REQUEST_PARSE_COOKIES: true,\n\n /**\n * Enable automatic query parameter parsing\n */\n A_SERVER_REQUEST_PARSE_QUERY: true,\n\n /**\n * Enable automatic body parsing\n */\n A_SERVER_REQUEST_PARSE_BODY: true,\n\n /**\n * Enable file upload handling\n */\n A_SERVER_REQUEST_ENABLE_FILE_UPLOADS: false,\n\n} as const;\n\n\nexport const A_RequestEnvVariablesArray = Object.keys(A_RequestEnvVariables) as Array<keyof typeof A_RequestEnvVariables>;\n\n\n\n/**\n * Array of all possible fields in A_RequestEnvVariables\n */\nexport type A_RequestEnvVariablesType = Array<keyof typeof A_RequestEnvVariables>;"]}
@@ -0,0 +1,38 @@
1
+ import '../../chunk-EQQGB2QZ.mjs';
2
+
3
+ const A_RequestEnvVariables = {
4
+ /**
5
+ * Default request timeout in milliseconds
6
+ */
7
+ A_SERVER_REQUEST_TIMEOUT: 5e3,
8
+ /**
9
+ * Maximum request body size in bytes
10
+ */
11
+ A_SERVER_REQUEST_MAX_BODY_SIZE: 10 * 1024 * 1024,
12
+ // 10MB
13
+ /**
14
+ * Default request encoding
15
+ */
16
+ A_SERVER_REQUEST_DEFAULT_ENCODING: "utf8",
17
+ /**
18
+ * Enable automatic cookie parsing
19
+ */
20
+ A_SERVER_REQUEST_PARSE_COOKIES: true,
21
+ /**
22
+ * Enable automatic query parameter parsing
23
+ */
24
+ A_SERVER_REQUEST_PARSE_QUERY: true,
25
+ /**
26
+ * Enable automatic body parsing
27
+ */
28
+ A_SERVER_REQUEST_PARSE_BODY: true,
29
+ /**
30
+ * Enable file upload handling
31
+ */
32
+ A_SERVER_REQUEST_ENABLE_FILE_UPLOADS: false
33
+ };
34
+ const A_RequestEnvVariablesArray = Object.keys(A_RequestEnvVariables);
35
+
36
+ export { A_RequestEnvVariables, A_RequestEnvVariablesArray };
37
+ //# sourceMappingURL=A-Request.env.mjs.map
38
+ //# sourceMappingURL=A-Request.env.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/lib/A-Request/A-Request.env.ts"],"names":[],"mappings":";;AAEO,MAAM,qBAAA,GAAwB;AAAA;AAAA;AAAA;AAAA,EAKjC,wBAAA,EAA0B,GAAA;AAAA;AAAA;AAAA;AAAA,EAK1B,8BAAA,EAAgC,KAAK,IAAA,GAAO,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAK5C,iCAAA,EAAmC,MAAA;AAAA;AAAA;AAAA;AAAA,EAKnC,8BAAA,EAAgC,IAAA;AAAA;AAAA;AAAA;AAAA,EAKhC,4BAAA,EAA8B,IAAA;AAAA;AAAA;AAAA;AAAA,EAK9B,2BAAA,EAA6B,IAAA;AAAA;AAAA;AAAA;AAAA,EAK7B,oCAAA,EAAsC;AAE1C;AAGO,MAAM,0BAAA,GAA6B,MAAA,CAAO,IAAA,CAAK,qBAAqB","file":"A-Request.env.mjs","sourcesContent":["\n\nexport const A_RequestEnvVariables = {\n\n /**\n * Default request timeout in milliseconds\n */\n A_SERVER_REQUEST_TIMEOUT: 5000,\n\n /**\n * Maximum request body size in bytes\n */\n A_SERVER_REQUEST_MAX_BODY_SIZE: 10 * 1024 * 1024, // 10MB\n\n /**\n * Default request encoding\n */\n A_SERVER_REQUEST_DEFAULT_ENCODING: 'utf8',\n\n /**\n * Enable automatic cookie parsing\n */\n A_SERVER_REQUEST_PARSE_COOKIES: true,\n\n /**\n * Enable automatic query parameter parsing\n */\n A_SERVER_REQUEST_PARSE_QUERY: true,\n\n /**\n * Enable automatic body parsing\n */\n A_SERVER_REQUEST_PARSE_BODY: true,\n\n /**\n * Enable file upload handling\n */\n A_SERVER_REQUEST_ENABLE_FILE_UPLOADS: false,\n\n} as const;\n\n\nexport const A_RequestEnvVariablesArray = Object.keys(A_RequestEnvVariables) as Array<keyof typeof A_RequestEnvVariables>;\n\n\n\n/**\n * Array of all possible fields in A_RequestEnvVariables\n */\nexport type A_RequestEnvVariablesType = Array<keyof typeof A_RequestEnvVariables>;"]}
@@ -0,0 +1,11 @@
1
+ import { A_Error } from '@adaas/a-concept';
2
+
3
+ declare class A_RequestError extends A_Error {
4
+ static readonly RequestBodyParsingError = "Unable to parse request body";
5
+ static readonly FileUploadError = "File upload error";
6
+ static readonly RequestTimeoutError = "Request timed out";
7
+ static readonly InvalidRequestError = "Invalid request";
8
+ static readonly MissingParametersError = "Missing required parameters";
9
+ }
10
+
11
+ export { A_RequestError };
@@ -0,0 +1,11 @@
1
+ import { A_Error } from '@adaas/a-concept';
2
+
3
+ declare class A_RequestError extends A_Error {
4
+ static readonly RequestBodyParsingError = "Unable to parse request body";
5
+ static readonly FileUploadError = "File upload error";
6
+ static readonly RequestTimeoutError = "Request timed out";
7
+ static readonly InvalidRequestError = "Invalid request";
8
+ static readonly MissingParametersError = "Missing required parameters";
9
+ }
10
+
11
+ export { A_RequestError };
@@ -0,0 +1,15 @@
1
+ 'use strict';
2
+
3
+ var aConcept = require('@adaas/a-concept');
4
+
5
+ class A_RequestError extends aConcept.A_Error {
6
+ }
7
+ A_RequestError.RequestBodyParsingError = "Unable to parse request body";
8
+ A_RequestError.FileUploadError = "File upload error";
9
+ A_RequestError.RequestTimeoutError = "Request timed out";
10
+ A_RequestError.InvalidRequestError = "Invalid request";
11
+ A_RequestError.MissingParametersError = "Missing required parameters";
12
+
13
+ exports.A_RequestError = A_RequestError;
14
+ //# sourceMappingURL=A-Request.error.js.map
15
+ //# sourceMappingURL=A-Request.error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/lib/A-Request/A-Request.error.ts"],"names":["A_Error"],"mappings":";;;;AAEO,MAAM,uBAAuBA,gBAAA,CAAQ;AAQ5C;AARa,cAAA,CAEO,uBAAA,GAA0B,8BAAA;AAFjC,cAAA,CAGO,eAAA,GAAkB,mBAAA;AAHzB,cAAA,CAIO,mBAAA,GAAsB,mBAAA;AAJ7B,cAAA,CAKO,mBAAA,GAAsB,iBAAA;AAL7B,cAAA,CAMO,sBAAA,GAAyB,6BAAA","file":"A-Request.error.js","sourcesContent":["import { A_Error } from \"@adaas/a-concept\";\n\nexport class A_RequestError extends A_Error {\n\n static readonly RequestBodyParsingError = 'Unable to parse request body';\n static readonly FileUploadError = 'File upload error';\n static readonly RequestTimeoutError = 'Request timed out';\n static readonly InvalidRequestError = 'Invalid request';\n static readonly MissingParametersError = 'Missing required parameters';\n\n}"]}
@@ -0,0 +1,14 @@
1
+ import '../../chunk-EQQGB2QZ.mjs';
2
+ import { A_Error } from '@adaas/a-concept';
3
+
4
+ class A_RequestError extends A_Error {
5
+ }
6
+ A_RequestError.RequestBodyParsingError = "Unable to parse request body";
7
+ A_RequestError.FileUploadError = "File upload error";
8
+ A_RequestError.RequestTimeoutError = "Request timed out";
9
+ A_RequestError.InvalidRequestError = "Invalid request";
10
+ A_RequestError.MissingParametersError = "Missing required parameters";
11
+
12
+ export { A_RequestError };
13
+ //# sourceMappingURL=A-Request.error.mjs.map
14
+ //# sourceMappingURL=A-Request.error.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/lib/A-Request/A-Request.error.ts"],"names":[],"mappings":";;;AAEO,MAAM,uBAAuB,OAAA,CAAQ;AAQ5C;AARa,cAAA,CAEO,uBAAA,GAA0B,8BAAA;AAFjC,cAAA,CAGO,eAAA,GAAkB,mBAAA;AAHzB,cAAA,CAIO,mBAAA,GAAsB,mBAAA;AAJ7B,cAAA,CAKO,mBAAA,GAAsB,iBAAA;AAL7B,cAAA,CAMO,sBAAA,GAAyB,6BAAA","file":"A-Request.error.mjs","sourcesContent":["import { A_Error } from \"@adaas/a-concept\";\n\nexport class A_RequestError extends A_Error {\n\n static readonly RequestBodyParsingError = 'Unable to parse request body';\n static readonly FileUploadError = 'File upload error';\n static readonly RequestTimeoutError = 'Request timed out';\n static readonly InvalidRequestError = 'Invalid request';\n static readonly MissingParametersError = 'Missing required parameters';\n\n}"]}
@@ -0,0 +1,105 @@
1
+ import { A_HttpServerRequestContext } from './A-HttpServerRequest.context.mjs';
2
+ import { b as A_Request_BodyType, e as A_Request_FileUpload } from '../../A-Request.entity-r905O60G.mjs';
3
+ import 'http';
4
+ import '@adaas/a-utils/a-operation';
5
+ import '@adaas/a-concept';
6
+ import '../A-Server/A-HttpServer.error.mjs';
7
+ import '../A-Server/A-HttpServer.types.mjs';
8
+ import '../A-Server/A-HttpServer.constants.mjs';
9
+ import './A-Request.constants.mjs';
10
+ import './A-Request.env.mjs';
11
+ import './A-HttpRequestData.context.mjs';
12
+ import '@adaas/a-utils/a-execution';
13
+ import '@adaas/a-utils/a-config';
14
+ import '../A-ServerRoute/A-ServerRoute.entity.mjs';
15
+ import '@adaas/a-utils/a-route';
16
+ import '../A-ServerRoute/A-ServerRoute.types.mjs';
17
+ import '../A-ServerRoute/A-ServerRoute.constants.mjs';
18
+
19
+ /**
20
+ * A_RequestHelper - Stateless utility class for HTTP request processing
21
+ *
22
+ * This helper class provides static methods for parsing and processing HTTP request data:
23
+ * - URL parameter extraction from route patterns
24
+ * - Query string parsing
25
+ * - Request body parsing (JSON, form-data, multipart, raw)
26
+ * - URL-encoded form data parsing
27
+ * - Multipart form data parsing (including file uploads)
28
+ *
29
+ * All methods are stateless and only depend on input parameters.
30
+ *
31
+ * @example
32
+ * ```typescript
33
+ * // Extract URL parameters
34
+ * const params = A_RequestHelper.extractParams('/users/123', '/users/:id');
35
+ * // { id: '123' }
36
+ *
37
+ * // Parse query string
38
+ * const query = A_RequestHelper.extractQuery('/api/users?page=1&limit=10');
39
+ * // { page: '1', limit: '10' }
40
+ *
41
+ * // Parse request body
42
+ * const result = await A_RequestHelper.parseRequestBody(req, { maxBodySize: 1024 * 1024 });
43
+ * // { data: {...}, type: 'json' }
44
+ * ```
45
+ */
46
+ declare class A_RequestHelper {
47
+ /**
48
+ * Extract URL parameters from a URL using a route pattern
49
+ * @param url - The actual URL to extract parameters from
50
+ * @param routePattern - The route pattern with parameters (e.g., "/users/:id/posts/:postId")
51
+ * @returns Object containing extracted parameters
52
+ */
53
+ static extractParams(url: string, routePattern: string): Record<string, string>;
54
+ /**
55
+ * Extract query parameters from URL
56
+ * @param url - The URL to extract query parameters from
57
+ * @returns Object containing query parameters
58
+ */
59
+ static extractQuery<T = Record<string, string>>(url: string): T;
60
+ /**
61
+ * Parse cookies from Cookie header
62
+ */
63
+ static parseCookies(cookieHeader?: string): Record<string, string>;
64
+ /**
65
+ * Parse request body based on Content-Type
66
+ *
67
+ *
68
+ * @param context - The HTTP server request context
69
+ * @returns Parsed body data and detected body type
70
+ */
71
+ static parseRequestBody<T extends any = any>(context: A_HttpServerRequestContext): {
72
+ data: T;
73
+ type: A_Request_BodyType;
74
+ };
75
+ /**
76
+ * Parse URL-encoded form data (application/x-www-form-urlencoded)
77
+ * @param body - The URL-encoded body string
78
+ * @returns Object containing form data
79
+ */
80
+ static parseFormUrlEncoded(
81
+ /**
82
+ * The URL-encoded body string
83
+ */
84
+ body: string): Record<string, string | string[]>;
85
+ /**
86
+ * Parse multipart form data (for file uploads and form data)
87
+ * @param buffer - The raw buffer containing multipart data
88
+ * @param contentType - The content type header
89
+ * @returns Object containing fields and files
90
+ */
91
+ static parseMultipartData(
92
+ /**
93
+ * The raw buffer containing multipart data
94
+ */
95
+ buffer: Buffer,
96
+ /**
97
+ * The content type header
98
+ */
99
+ contentType: string): {
100
+ fields: Record<string, string>;
101
+ files: A_Request_FileUpload[];
102
+ };
103
+ }
104
+
105
+ export { A_RequestHelper };
@@ -0,0 +1,105 @@
1
+ import { A_HttpServerRequestContext } from './A-HttpServerRequest.context.js';
2
+ import { b as A_Request_BodyType, e as A_Request_FileUpload } from '../../A-Request.entity-8_9MCXT2.js';
3
+ import 'http';
4
+ import '@adaas/a-utils/a-operation';
5
+ import '@adaas/a-concept';
6
+ import '../A-Server/A-HttpServer.error.js';
7
+ import '../A-Server/A-HttpServer.types.js';
8
+ import '../A-Server/A-HttpServer.constants.js';
9
+ import './A-Request.constants.js';
10
+ import './A-Request.env.js';
11
+ import './A-HttpRequestData.context.js';
12
+ import '@adaas/a-utils/a-execution';
13
+ import '@adaas/a-utils/a-config';
14
+ import '../A-ServerRoute/A-ServerRoute.entity.js';
15
+ import '@adaas/a-utils/a-route';
16
+ import '../A-ServerRoute/A-ServerRoute.types.js';
17
+ import '../A-ServerRoute/A-ServerRoute.constants.js';
18
+
19
+ /**
20
+ * A_RequestHelper - Stateless utility class for HTTP request processing
21
+ *
22
+ * This helper class provides static methods for parsing and processing HTTP request data:
23
+ * - URL parameter extraction from route patterns
24
+ * - Query string parsing
25
+ * - Request body parsing (JSON, form-data, multipart, raw)
26
+ * - URL-encoded form data parsing
27
+ * - Multipart form data parsing (including file uploads)
28
+ *
29
+ * All methods are stateless and only depend on input parameters.
30
+ *
31
+ * @example
32
+ * ```typescript
33
+ * // Extract URL parameters
34
+ * const params = A_RequestHelper.extractParams('/users/123', '/users/:id');
35
+ * // { id: '123' }
36
+ *
37
+ * // Parse query string
38
+ * const query = A_RequestHelper.extractQuery('/api/users?page=1&limit=10');
39
+ * // { page: '1', limit: '10' }
40
+ *
41
+ * // Parse request body
42
+ * const result = await A_RequestHelper.parseRequestBody(req, { maxBodySize: 1024 * 1024 });
43
+ * // { data: {...}, type: 'json' }
44
+ * ```
45
+ */
46
+ declare class A_RequestHelper {
47
+ /**
48
+ * Extract URL parameters from a URL using a route pattern
49
+ * @param url - The actual URL to extract parameters from
50
+ * @param routePattern - The route pattern with parameters (e.g., "/users/:id/posts/:postId")
51
+ * @returns Object containing extracted parameters
52
+ */
53
+ static extractParams(url: string, routePattern: string): Record<string, string>;
54
+ /**
55
+ * Extract query parameters from URL
56
+ * @param url - The URL to extract query parameters from
57
+ * @returns Object containing query parameters
58
+ */
59
+ static extractQuery<T = Record<string, string>>(url: string): T;
60
+ /**
61
+ * Parse cookies from Cookie header
62
+ */
63
+ static parseCookies(cookieHeader?: string): Record<string, string>;
64
+ /**
65
+ * Parse request body based on Content-Type
66
+ *
67
+ *
68
+ * @param context - The HTTP server request context
69
+ * @returns Parsed body data and detected body type
70
+ */
71
+ static parseRequestBody<T extends any = any>(context: A_HttpServerRequestContext): {
72
+ data: T;
73
+ type: A_Request_BodyType;
74
+ };
75
+ /**
76
+ * Parse URL-encoded form data (application/x-www-form-urlencoded)
77
+ * @param body - The URL-encoded body string
78
+ * @returns Object containing form data
79
+ */
80
+ static parseFormUrlEncoded(
81
+ /**
82
+ * The URL-encoded body string
83
+ */
84
+ body: string): Record<string, string | string[]>;
85
+ /**
86
+ * Parse multipart form data (for file uploads and form data)
87
+ * @param buffer - The raw buffer containing multipart data
88
+ * @param contentType - The content type header
89
+ * @returns Object containing fields and files
90
+ */
91
+ static parseMultipartData(
92
+ /**
93
+ * The raw buffer containing multipart data
94
+ */
95
+ buffer: Buffer,
96
+ /**
97
+ * The content type header
98
+ */
99
+ contentType: string): {
100
+ fields: Record<string, string>;
101
+ files: A_Request_FileUpload[];
102
+ };
103
+ }
104
+
105
+ export { A_RequestHelper };