@dooboostore/simple-boot-http-server 1.0.16 → 1.0.18

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 (429) hide show
  1. package/LICENSE.md +7 -0
  2. package/README.MD +6 -47
  3. package/dist/cjs/SimpleBootHttpServer.d.ts.map +1 -0
  4. package/dist/cjs/SimpleBootHttpServer.js +930 -0
  5. package/dist/cjs/SimpleBootHttpServer.js.map +7 -0
  6. package/dist/cjs/codes/HttpHeaders.d.ts.map +1 -0
  7. package/dist/cjs/codes/HttpHeaders.js +71 -0
  8. package/dist/cjs/codes/HttpHeaders.js.map +7 -0
  9. package/dist/cjs/codes/HttpMethod.d.ts.map +1 -0
  10. package/dist/cjs/codes/HttpMethod.js +41 -0
  11. package/dist/cjs/codes/HttpMethod.js.map +7 -0
  12. package/dist/cjs/codes/HttpStatus.d.ts +45 -0
  13. package/dist/cjs/codes/HttpStatus.d.ts.map +1 -0
  14. package/dist/cjs/codes/HttpStatus.js +49 -0
  15. package/dist/cjs/codes/HttpStatus.js.map +7 -0
  16. package/dist/cjs/codes/Mimes.d.ts.map +1 -0
  17. package/dist/cjs/codes/Mimes.js +57 -0
  18. package/dist/cjs/codes/Mimes.js.map +7 -0
  19. package/dist/cjs/codes/index.d.ts +5 -0
  20. package/dist/cjs/codes/index.d.ts.map +1 -0
  21. package/dist/cjs/codes/index.js +145 -0
  22. package/dist/cjs/codes/index.js.map +7 -0
  23. package/dist/cjs/decorators/MethodMapping.d.ts.map +1 -0
  24. package/dist/cjs/decorators/MethodMapping.js +265 -0
  25. package/dist/cjs/decorators/MethodMapping.js.map +7 -0
  26. package/dist/cjs/decorators/index.d.ts +2 -0
  27. package/dist/cjs/decorators/index.d.ts.map +1 -0
  28. package/dist/cjs/decorators/index.js +267 -0
  29. package/dist/cjs/decorators/index.js.map +7 -0
  30. package/dist/cjs/endpoints/CrossDomainHeaderEndPoint.d.ts.map +1 -0
  31. package/dist/cjs/endpoints/CrossDomainHeaderEndPoint.js +55 -0
  32. package/dist/cjs/endpoints/CrossDomainHeaderEndPoint.js.map +7 -0
  33. package/dist/cjs/endpoints/EndPoint.d.ts.map +1 -0
  34. package/dist/cjs/endpoints/EndPoint.js +18 -0
  35. package/dist/cjs/endpoints/EndPoint.js.map +7 -0
  36. package/dist/cjs/endpoints/HeaderEndPoint.d.ts.map +1 -0
  37. package/dist/cjs/endpoints/HeaderEndPoint.js +41 -0
  38. package/dist/cjs/endpoints/HeaderEndPoint.js.map +7 -0
  39. package/dist/cjs/endpoints/index.d.ts +4 -0
  40. package/dist/cjs/endpoints/index.d.ts.map +1 -0
  41. package/dist/cjs/endpoints/index.js +73 -0
  42. package/dist/cjs/endpoints/index.js.map +7 -0
  43. package/dist/cjs/errors/BadRequestError.d.ts.map +1 -0
  44. package/dist/cjs/errors/BadRequestError.js +45 -0
  45. package/dist/cjs/errors/BadRequestError.js.map +7 -0
  46. package/dist/cjs/errors/ForbiddenError.d.ts.map +1 -0
  47. package/dist/cjs/errors/ForbiddenError.js +45 -0
  48. package/dist/cjs/errors/ForbiddenError.js.map +7 -0
  49. package/dist/cjs/errors/HttpError.d.ts.map +1 -0
  50. package/dist/cjs/errors/HttpError.js +36 -0
  51. package/dist/cjs/errors/HttpError.js.map +7 -0
  52. package/dist/cjs/errors/InternalServerError.d.ts.map +1 -0
  53. package/dist/cjs/errors/InternalServerError.js +45 -0
  54. package/dist/cjs/errors/InternalServerError.js.map +7 -0
  55. package/dist/cjs/errors/NotFoundError.d.ts.map +1 -0
  56. package/dist/cjs/errors/NotFoundError.js +45 -0
  57. package/dist/cjs/errors/NotFoundError.js.map +7 -0
  58. package/dist/cjs/errors/UnauthorizedError.d.ts.map +1 -0
  59. package/dist/cjs/errors/UnauthorizedError.js +45 -0
  60. package/dist/cjs/errors/UnauthorizedError.js.map +7 -0
  61. package/dist/cjs/errors/index.d.ts +7 -0
  62. package/dist/cjs/errors/index.d.ts.map +1 -0
  63. package/dist/cjs/errors/index.js +83 -0
  64. package/dist/cjs/errors/index.js.map +7 -0
  65. package/dist/cjs/filters/CacheFilter.d.ts.map +1 -0
  66. package/dist/cjs/filters/CacheFilter.js +153 -0
  67. package/dist/cjs/filters/CacheFilter.js.map +7 -0
  68. package/dist/cjs/filters/Filter.d.ts.map +1 -0
  69. package/dist/cjs/filters/Filter.js +18 -0
  70. package/dist/cjs/filters/Filter.js.map +7 -0
  71. package/dist/cjs/filters/HttpStatusFilter.d.ts.map +1 -0
  72. package/dist/cjs/filters/HttpStatusFilter.js +44 -0
  73. package/dist/cjs/filters/HttpStatusFilter.js.map +7 -0
  74. package/dist/cjs/filters/OpenApi3Filter.d.ts.map +1 -0
  75. package/dist/cjs/filters/OpenApi3Filter.js +83 -0
  76. package/dist/cjs/filters/OpenApi3Filter.js.map +7 -0
  77. package/dist/cjs/filters/ResourceFilter.d.ts.map +1 -0
  78. package/dist/cjs/filters/ResourceFilter.js +91 -0
  79. package/dist/cjs/filters/ResourceFilter.js.map +7 -0
  80. package/dist/cjs/filters/ThrowFilter.d.ts.map +1 -0
  81. package/dist/cjs/filters/ThrowFilter.js +47 -0
  82. package/dist/cjs/filters/ThrowFilter.js.map +7 -0
  83. package/dist/cjs/filters/index.d.ts +7 -0
  84. package/dist/cjs/filters/index.d.ts.map +1 -0
  85. package/dist/cjs/filters/index.js +318 -0
  86. package/dist/cjs/filters/index.js.map +7 -0
  87. package/dist/cjs/index.d.ts +13 -0
  88. package/dist/cjs/index.d.ts.map +1 -0
  89. package/dist/cjs/index.js +1756 -0
  90. package/dist/cjs/index.js.map +7 -0
  91. package/dist/cjs/inject/InjectSituationType.d.ts.map +1 -0
  92. package/dist/cjs/inject/InjectSituationType.js +33 -0
  93. package/dist/cjs/inject/InjectSituationType.js.map +7 -0
  94. package/dist/cjs/inject/index.d.ts +2 -0
  95. package/dist/cjs/inject/index.d.ts.map +1 -0
  96. package/dist/cjs/inject/index.js +35 -0
  97. package/dist/cjs/inject/index.js.map +7 -0
  98. package/dist/cjs/lifecycle/OnInit.d.ts.map +1 -0
  99. package/dist/cjs/lifecycle/OnInit.js +18 -0
  100. package/dist/cjs/lifecycle/OnInit.js.map +7 -0
  101. package/dist/cjs/lifecycle/index.d.ts +2 -0
  102. package/dist/cjs/lifecycle/index.d.ts.map +1 -0
  103. package/dist/cjs/lifecycle/index.js +18 -0
  104. package/dist/cjs/lifecycle/index.js.map +7 -0
  105. package/{models → dist/cjs/models}/RequestResponse.d.ts +1 -3
  106. package/dist/cjs/models/RequestResponse.d.ts.map +1 -0
  107. package/dist/cjs/models/RequestResponse.js +500 -0
  108. package/dist/cjs/models/RequestResponse.js.map +7 -0
  109. package/dist/cjs/models/datas/HeaderData.d.ts.map +1 -0
  110. package/dist/cjs/models/datas/HeaderData.js +35 -0
  111. package/dist/cjs/models/datas/HeaderData.js.map +7 -0
  112. package/dist/cjs/models/datas/MultipartData.d.ts.map +1 -0
  113. package/dist/cjs/models/datas/MultipartData.js +18 -0
  114. package/dist/cjs/models/datas/MultipartData.js.map +7 -0
  115. package/dist/cjs/models/datas/ReqHeader.d.ts.map +1 -0
  116. package/dist/cjs/models/datas/ReqHeader.js +31 -0
  117. package/dist/cjs/models/datas/ReqHeader.js.map +7 -0
  118. package/dist/cjs/models/datas/Resource.d.ts.map +1 -0
  119. package/dist/cjs/models/datas/Resource.js +550 -0
  120. package/dist/cjs/models/datas/Resource.js.map +7 -0
  121. package/dist/cjs/models/datas/body/ReqFormUrlBody.d.ts.map +1 -0
  122. package/dist/cjs/models/datas/body/ReqFormUrlBody.js +31 -0
  123. package/dist/cjs/models/datas/body/ReqFormUrlBody.js.map +7 -0
  124. package/dist/cjs/models/datas/body/ReqJsonBody.d.ts.map +1 -0
  125. package/dist/cjs/models/datas/body/ReqJsonBody.js +31 -0
  126. package/dist/cjs/models/datas/body/ReqJsonBody.js.map +7 -0
  127. package/dist/cjs/models/datas/body/ReqMultipartFormBody.d.ts.map +1 -0
  128. package/dist/cjs/models/datas/body/ReqMultipartFormBody.js +34 -0
  129. package/dist/cjs/models/datas/body/ReqMultipartFormBody.js.map +7 -0
  130. package/dist/cjs/models/index.d.ts +10 -0
  131. package/dist/cjs/models/index.d.ts.map +1 -0
  132. package/dist/cjs/models/index.js +593 -0
  133. package/dist/cjs/models/index.js.map +7 -0
  134. package/dist/cjs/models/method/patch/PatchJson.d.ts.map +1 -0
  135. package/dist/cjs/models/method/patch/PatchJson.js +49 -0
  136. package/dist/cjs/models/method/patch/PatchJson.js.map +7 -0
  137. package/dist/cjs/option/HttpServerOption.d.ts.map +1 -0
  138. package/dist/cjs/option/HttpServerOption.js +67 -0
  139. package/dist/cjs/option/HttpServerOption.js.map +7 -0
  140. package/dist/cjs/option/index.d.ts +2 -0
  141. package/dist/cjs/option/index.d.ts.map +1 -0
  142. package/dist/cjs/option/index.js +69 -0
  143. package/dist/cjs/option/index.js.map +7 -0
  144. package/dist/cjs/package.json +3 -0
  145. package/dist/cjs/resolvers/Resolver.d.ts.map +1 -0
  146. package/dist/cjs/resolvers/Resolver.js +18 -0
  147. package/dist/cjs/resolvers/Resolver.js.map +7 -0
  148. package/{resolvers/ResourceResorver.d.ts → dist/cjs/resolvers/ResourceResolver.d.ts} +2 -2
  149. package/dist/cjs/resolvers/ResourceResolver.d.ts.map +1 -0
  150. package/dist/cjs/resolvers/ResourceResolver.js +571 -0
  151. package/dist/cjs/resolvers/ResourceResolver.js.map +7 -0
  152. package/dist/cjs/resolvers/index.d.ts +3 -0
  153. package/dist/cjs/resolvers/index.d.ts.map +1 -0
  154. package/dist/cjs/resolvers/index.js +571 -0
  155. package/dist/cjs/resolvers/index.js.map +7 -0
  156. package/dist/cjs/session/SessionManager.d.ts.map +1 -0
  157. package/dist/cjs/session/SessionManager.js +577 -0
  158. package/dist/cjs/session/SessionManager.js.map +7 -0
  159. package/dist/cjs/session/index.d.ts +2 -0
  160. package/dist/cjs/session/index.d.ts.map +1 -0
  161. package/dist/cjs/session/index.js +579 -0
  162. package/dist/cjs/session/index.js.map +7 -0
  163. package/dist/esm/SimpleBootHttpServer.d.ts +14 -0
  164. package/dist/esm/SimpleBootHttpServer.d.ts.map +1 -0
  165. package/dist/esm/SimpleBootHttpServer.js +906 -0
  166. package/dist/esm/SimpleBootHttpServer.js.map +7 -0
  167. package/dist/esm/codes/HttpHeaders.d.ts +42 -0
  168. package/dist/esm/codes/HttpHeaders.d.ts.map +1 -0
  169. package/dist/esm/codes/HttpHeaders.js +47 -0
  170. package/dist/esm/codes/HttpHeaders.js.map +7 -0
  171. package/dist/esm/codes/HttpMethod.d.ts +12 -0
  172. package/dist/esm/codes/HttpMethod.d.ts.map +1 -0
  173. package/dist/esm/codes/HttpMethod.js +17 -0
  174. package/dist/esm/codes/HttpMethod.js.map +7 -0
  175. package/dist/esm/codes/HttpStatus.d.ts +45 -0
  176. package/dist/esm/codes/HttpStatus.d.ts.map +1 -0
  177. package/dist/esm/codes/HttpStatus.js +25 -0
  178. package/dist/esm/codes/HttpStatus.js.map +7 -0
  179. package/dist/esm/codes/Mimes.d.ts +28 -0
  180. package/dist/esm/codes/Mimes.d.ts.map +1 -0
  181. package/dist/esm/codes/Mimes.js +33 -0
  182. package/dist/esm/codes/Mimes.js.map +7 -0
  183. package/dist/esm/codes/index.d.ts +5 -0
  184. package/dist/esm/codes/index.d.ts.map +1 -0
  185. package/dist/esm/codes/index.js +116 -0
  186. package/dist/esm/codes/index.js.map +7 -0
  187. package/dist/esm/decorators/MethodMapping.d.ts +74 -0
  188. package/dist/esm/decorators/MethodMapping.d.ts.map +1 -0
  189. package/dist/esm/decorators/MethodMapping.js +211 -0
  190. package/dist/esm/decorators/MethodMapping.js.map +7 -0
  191. package/dist/esm/decorators/index.d.ts +2 -0
  192. package/dist/esm/decorators/index.d.ts.map +1 -0
  193. package/dist/esm/decorators/index.js +211 -0
  194. package/dist/esm/decorators/index.js.map +7 -0
  195. package/dist/esm/endpoints/CrossDomainHeaderEndPoint.d.ts +16 -0
  196. package/dist/esm/endpoints/CrossDomainHeaderEndPoint.d.ts.map +1 -0
  197. package/dist/esm/endpoints/CrossDomainHeaderEndPoint.js +31 -0
  198. package/dist/esm/endpoints/CrossDomainHeaderEndPoint.js.map +7 -0
  199. package/dist/esm/endpoints/EndPoint.d.ts +7 -0
  200. package/dist/esm/endpoints/EndPoint.d.ts.map +1 -0
  201. package/dist/esm/endpoints/EndPoint.js +1 -0
  202. package/dist/esm/endpoints/EndPoint.js.map +7 -0
  203. package/dist/esm/endpoints/HeaderEndPoint.d.ts +12 -0
  204. package/dist/esm/endpoints/HeaderEndPoint.d.ts.map +1 -0
  205. package/dist/esm/endpoints/HeaderEndPoint.js +17 -0
  206. package/dist/esm/endpoints/HeaderEndPoint.js.map +7 -0
  207. package/dist/esm/endpoints/index.d.ts +4 -0
  208. package/dist/esm/endpoints/index.d.ts.map +1 -0
  209. package/dist/esm/endpoints/index.js +46 -0
  210. package/dist/esm/endpoints/index.js.map +7 -0
  211. package/dist/esm/errors/BadRequestError.d.ts +8 -0
  212. package/dist/esm/errors/BadRequestError.d.ts.map +1 -0
  213. package/dist/esm/errors/BadRequestError.js +19 -0
  214. package/dist/esm/errors/BadRequestError.js.map +7 -0
  215. package/dist/esm/errors/ForbiddenError.d.ts +8 -0
  216. package/dist/esm/errors/ForbiddenError.d.ts.map +1 -0
  217. package/dist/esm/errors/ForbiddenError.js +19 -0
  218. package/dist/esm/errors/ForbiddenError.js.map +7 -0
  219. package/dist/esm/errors/HttpError.d.ts +12 -0
  220. package/dist/esm/errors/HttpError.d.ts.map +1 -0
  221. package/dist/esm/errors/HttpError.js +12 -0
  222. package/dist/esm/errors/HttpError.js.map +7 -0
  223. package/dist/esm/errors/InternalServerError.d.ts +8 -0
  224. package/dist/esm/errors/InternalServerError.d.ts.map +1 -0
  225. package/dist/esm/errors/InternalServerError.js +19 -0
  226. package/dist/esm/errors/InternalServerError.js.map +7 -0
  227. package/dist/esm/errors/NotFoundError.d.ts +8 -0
  228. package/dist/esm/errors/NotFoundError.d.ts.map +1 -0
  229. package/dist/esm/errors/NotFoundError.js +19 -0
  230. package/dist/esm/errors/NotFoundError.js.map +7 -0
  231. package/dist/esm/errors/UnauthorizedError.d.ts +8 -0
  232. package/dist/esm/errors/UnauthorizedError.d.ts.map +1 -0
  233. package/dist/esm/errors/UnauthorizedError.js +19 -0
  234. package/dist/esm/errors/UnauthorizedError.js.map +7 -0
  235. package/dist/esm/errors/index.d.ts +7 -0
  236. package/dist/esm/errors/index.d.ts.map +1 -0
  237. package/dist/esm/errors/index.js +52 -0
  238. package/dist/esm/errors/index.js.map +7 -0
  239. package/dist/esm/filters/CacheFilter.d.ts +45 -0
  240. package/dist/esm/filters/CacheFilter.d.ts.map +1 -0
  241. package/dist/esm/filters/CacheFilter.js +129 -0
  242. package/dist/esm/filters/CacheFilter.js.map +7 -0
  243. package/dist/esm/filters/Filter.d.ts +17 -0
  244. package/dist/esm/filters/Filter.d.ts.map +1 -0
  245. package/dist/esm/filters/Filter.js +1 -0
  246. package/dist/esm/filters/Filter.js.map +7 -0
  247. package/dist/esm/filters/HttpStatusFilter.d.ts +20 -0
  248. package/dist/esm/filters/HttpStatusFilter.d.ts.map +1 -0
  249. package/dist/esm/filters/HttpStatusFilter.js +20 -0
  250. package/dist/esm/filters/HttpStatusFilter.js.map +7 -0
  251. package/dist/esm/filters/OpenApi3Filter.d.ts +142 -0
  252. package/dist/esm/filters/OpenApi3Filter.d.ts.map +1 -0
  253. package/dist/esm/filters/OpenApi3Filter.js +57 -0
  254. package/dist/esm/filters/OpenApi3Filter.js.map +7 -0
  255. package/dist/esm/filters/ResourceFilter.d.ts +24 -0
  256. package/dist/esm/filters/ResourceFilter.d.ts.map +1 -0
  257. package/dist/esm/filters/ResourceFilter.js +57 -0
  258. package/dist/esm/filters/ResourceFilter.js.map +7 -0
  259. package/dist/esm/filters/ThrowFilter.d.ts +19 -0
  260. package/dist/esm/filters/ThrowFilter.d.ts.map +1 -0
  261. package/dist/esm/filters/ThrowFilter.js +23 -0
  262. package/dist/esm/filters/ThrowFilter.js.map +7 -0
  263. package/dist/esm/filters/index.d.ts +7 -0
  264. package/dist/esm/filters/index.d.ts.map +1 -0
  265. package/dist/esm/filters/index.js +278 -0
  266. package/dist/esm/filters/index.js.map +7 -0
  267. package/dist/esm/index.d.ts +13 -0
  268. package/dist/esm/index.d.ts.map +1 -0
  269. package/dist/esm/index.js +1662 -0
  270. package/dist/esm/index.js.map +7 -0
  271. package/dist/esm/inject/InjectSituationType.d.ts +4 -0
  272. package/dist/esm/inject/InjectSituationType.d.ts.map +1 -0
  273. package/dist/esm/inject/InjectSituationType.js +9 -0
  274. package/dist/esm/inject/InjectSituationType.js.map +7 -0
  275. package/dist/esm/inject/index.d.ts +2 -0
  276. package/dist/esm/inject/index.d.ts.map +1 -0
  277. package/dist/esm/inject/index.js +9 -0
  278. package/dist/esm/inject/index.js.map +7 -0
  279. package/dist/esm/lifecycle/OnInit.d.ts +5 -0
  280. package/dist/esm/lifecycle/OnInit.d.ts.map +1 -0
  281. package/dist/esm/lifecycle/OnInit.js +1 -0
  282. package/dist/esm/lifecycle/OnInit.js.map +7 -0
  283. package/dist/esm/lifecycle/index.d.ts +2 -0
  284. package/dist/esm/lifecycle/index.d.ts.map +1 -0
  285. package/dist/esm/lifecycle/index.js +1 -0
  286. package/dist/esm/lifecycle/index.js.map +7 -0
  287. package/dist/esm/models/RequestResponse.d.ts +100 -0
  288. package/dist/esm/models/RequestResponse.d.ts.map +1 -0
  289. package/dist/esm/models/RequestResponse.js +475 -0
  290. package/dist/esm/models/RequestResponse.js.map +7 -0
  291. package/dist/esm/models/datas/HeaderData.d.ts +10 -0
  292. package/dist/esm/models/datas/HeaderData.d.ts.map +1 -0
  293. package/dist/esm/models/datas/HeaderData.js +11 -0
  294. package/dist/esm/models/datas/HeaderData.js.map +7 -0
  295. package/dist/esm/models/datas/MultipartData.d.ts +12 -0
  296. package/dist/esm/models/datas/MultipartData.d.ts.map +1 -0
  297. package/dist/esm/models/datas/MultipartData.js +1 -0
  298. package/dist/esm/models/datas/MultipartData.js.map +7 -0
  299. package/dist/esm/models/datas/ReqHeader.d.ts +68 -0
  300. package/dist/esm/models/datas/ReqHeader.d.ts.map +1 -0
  301. package/dist/esm/models/datas/ReqHeader.js +7 -0
  302. package/dist/esm/models/datas/ReqHeader.js.map +7 -0
  303. package/dist/esm/models/datas/Resource.d.ts +11 -0
  304. package/dist/esm/models/datas/Resource.d.ts.map +1 -0
  305. package/dist/esm/models/datas/Resource.js +516 -0
  306. package/dist/esm/models/datas/Resource.js.map +7 -0
  307. package/dist/esm/models/datas/body/ReqFormUrlBody.d.ts +4 -0
  308. package/dist/esm/models/datas/body/ReqFormUrlBody.d.ts.map +1 -0
  309. package/dist/esm/models/datas/body/ReqFormUrlBody.js +7 -0
  310. package/dist/esm/models/datas/body/ReqFormUrlBody.js.map +7 -0
  311. package/dist/esm/models/datas/body/ReqJsonBody.d.ts +4 -0
  312. package/dist/esm/models/datas/body/ReqJsonBody.d.ts.map +1 -0
  313. package/dist/esm/models/datas/body/ReqJsonBody.js +7 -0
  314. package/dist/esm/models/datas/body/ReqJsonBody.js.map +7 -0
  315. package/dist/esm/models/datas/body/ReqMultipartFormBody.d.ts +6 -0
  316. package/dist/esm/models/datas/body/ReqMultipartFormBody.d.ts.map +1 -0
  317. package/dist/esm/models/datas/body/ReqMultipartFormBody.js +10 -0
  318. package/dist/esm/models/datas/body/ReqMultipartFormBody.js.map +7 -0
  319. package/dist/esm/models/index.d.ts +10 -0
  320. package/dist/esm/models/index.d.ts.map +1 -0
  321. package/dist/esm/models/index.js +549 -0
  322. package/dist/esm/models/index.js.map +7 -0
  323. package/dist/esm/models/method/patch/PatchJson.d.ts +8 -0
  324. package/dist/esm/models/method/patch/PatchJson.d.ts.map +1 -0
  325. package/dist/esm/models/method/patch/PatchJson.js +15 -0
  326. package/dist/esm/models/method/patch/PatchJson.js.map +7 -0
  327. package/dist/esm/option/HttpServerOption.d.ts +83 -0
  328. package/dist/esm/option/HttpServerOption.d.ts.map +1 -0
  329. package/dist/esm/option/HttpServerOption.js +43 -0
  330. package/dist/esm/option/HttpServerOption.js.map +7 -0
  331. package/dist/esm/option/index.d.ts +2 -0
  332. package/dist/esm/option/index.d.ts.map +1 -0
  333. package/dist/esm/option/index.js +43 -0
  334. package/dist/esm/option/index.js.map +7 -0
  335. package/dist/esm/resolvers/Resolver.d.ts +5 -0
  336. package/dist/esm/resolvers/Resolver.d.ts.map +1 -0
  337. package/dist/esm/resolvers/Resolver.js +1 -0
  338. package/dist/esm/resolvers/Resolver.js.map +7 -0
  339. package/dist/esm/resolvers/ResourceResolver.d.ts +6 -0
  340. package/dist/esm/resolvers/ResourceResolver.d.ts.map +1 -0
  341. package/dist/esm/resolvers/ResourceResolver.js +538 -0
  342. package/dist/esm/resolvers/ResourceResolver.js.map +7 -0
  343. package/dist/esm/resolvers/index.d.ts +3 -0
  344. package/dist/esm/resolvers/index.d.ts.map +1 -0
  345. package/dist/esm/resolvers/index.js +538 -0
  346. package/dist/esm/resolvers/index.js.map +7 -0
  347. package/dist/esm/session/SessionManager.d.ts +57 -0
  348. package/dist/esm/session/SessionManager.d.ts.map +1 -0
  349. package/dist/esm/session/SessionManager.js +553 -0
  350. package/dist/esm/session/SessionManager.js.map +7 -0
  351. package/dist/esm/session/index.d.ts +2 -0
  352. package/dist/esm/session/index.d.ts.map +1 -0
  353. package/dist/esm/session/index.js +553 -0
  354. package/dist/esm/session/index.js.map +7 -0
  355. package/dist/esm-bundle/dooboostore-simple-boot-http-server.esm.js +1662 -0
  356. package/dist/esm-bundle/dooboostore-simple-boot-http-server.esm.js.map +7 -0
  357. package/dist/umd-bundle/dooboostore-simple-boot-http-server.umd.js +1699 -0
  358. package/dist/umd-bundle/dooboostore-simple-boot-http-server.umd.js.map +7 -0
  359. package/package.json +65 -46
  360. package/SimpleBootHttpServer.js +0 -313
  361. package/codes/HttpHeaders.js +0 -43
  362. package/codes/HttpMethod.js +0 -13
  363. package/codes/HttpStatus.d.ts +0 -20
  364. package/codes/HttpStatus.js +0 -21
  365. package/codes/Mimes.js +0 -29
  366. package/decorators/MethodMapping.js +0 -198
  367. package/endpoints/CrossDomainHeaderEndPoint.js +0 -37
  368. package/endpoints/EndPoint.js +0 -2
  369. package/endpoints/HeaderEndPoint.js +0 -26
  370. package/errors/BadRequestError.js +0 -8
  371. package/errors/ForbiddenError.js +0 -8
  372. package/errors/HttpError.js +0 -8
  373. package/errors/InternalServerError.js +0 -8
  374. package/errors/NotFoundError.js +0 -8
  375. package/errors/UnauthorizedError.js +0 -8
  376. package/filters/CacheFilter.js +0 -145
  377. package/filters/Filter.js +0 -2
  378. package/filters/HttpStatusFilter.js +0 -31
  379. package/filters/OpenApi3Filter.js +0 -57
  380. package/filters/ResourceFilter.js +0 -72
  381. package/filters/ThrowFilter.js +0 -34
  382. package/inject/InjectSituationType.js +0 -5
  383. package/lifecycle/OnInit.js +0 -2
  384. package/models/RequestResponse.js +0 -467
  385. package/models/datas/HeaderData.js +0 -7
  386. package/models/datas/MultipartData.js +0 -2
  387. package/models/datas/ReqHeader.js +0 -3
  388. package/models/datas/Resource.js +0 -55
  389. package/models/datas/body/ReqFormUrlBody.js +0 -3
  390. package/models/datas/body/ReqJsonBody.js +0 -3
  391. package/models/datas/body/ReqMultipartFormBody.js +0 -6
  392. package/models/method/patch/PatchJson.js +0 -11
  393. package/option/HttpServerOption.js +0 -35
  394. package/resolvers/Resolver.js +0 -2
  395. package/resolvers/ResourceResorver.js +0 -18
  396. package/session/SessionManager.js +0 -108
  397. /package/{SimpleBootHttpServer.d.ts → dist/cjs/SimpleBootHttpServer.d.ts} +0 -0
  398. /package/{codes → dist/cjs/codes}/HttpHeaders.d.ts +0 -0
  399. /package/{codes → dist/cjs/codes}/HttpMethod.d.ts +0 -0
  400. /package/{codes → dist/cjs/codes}/Mimes.d.ts +0 -0
  401. /package/{decorators → dist/cjs/decorators}/MethodMapping.d.ts +0 -0
  402. /package/{endpoints → dist/cjs/endpoints}/CrossDomainHeaderEndPoint.d.ts +0 -0
  403. /package/{endpoints → dist/cjs/endpoints}/EndPoint.d.ts +0 -0
  404. /package/{endpoints → dist/cjs/endpoints}/HeaderEndPoint.d.ts +0 -0
  405. /package/{errors → dist/cjs/errors}/BadRequestError.d.ts +0 -0
  406. /package/{errors → dist/cjs/errors}/ForbiddenError.d.ts +0 -0
  407. /package/{errors → dist/cjs/errors}/HttpError.d.ts +0 -0
  408. /package/{errors → dist/cjs/errors}/InternalServerError.d.ts +0 -0
  409. /package/{errors → dist/cjs/errors}/NotFoundError.d.ts +0 -0
  410. /package/{errors → dist/cjs/errors}/UnauthorizedError.d.ts +0 -0
  411. /package/{filters → dist/cjs/filters}/CacheFilter.d.ts +0 -0
  412. /package/{filters → dist/cjs/filters}/Filter.d.ts +0 -0
  413. /package/{filters → dist/cjs/filters}/HttpStatusFilter.d.ts +0 -0
  414. /package/{filters → dist/cjs/filters}/OpenApi3Filter.d.ts +0 -0
  415. /package/{filters → dist/cjs/filters}/ResourceFilter.d.ts +0 -0
  416. /package/{filters → dist/cjs/filters}/ThrowFilter.d.ts +0 -0
  417. /package/{inject → dist/cjs/inject}/InjectSituationType.d.ts +0 -0
  418. /package/{lifecycle → dist/cjs/lifecycle}/OnInit.d.ts +0 -0
  419. /package/{models → dist/cjs/models}/datas/HeaderData.d.ts +0 -0
  420. /package/{models → dist/cjs/models}/datas/MultipartData.d.ts +0 -0
  421. /package/{models → dist/cjs/models}/datas/ReqHeader.d.ts +0 -0
  422. /package/{models → dist/cjs/models}/datas/Resource.d.ts +0 -0
  423. /package/{models → dist/cjs/models}/datas/body/ReqFormUrlBody.d.ts +0 -0
  424. /package/{models → dist/cjs/models}/datas/body/ReqJsonBody.d.ts +0 -0
  425. /package/{models → dist/cjs/models}/datas/body/ReqMultipartFormBody.d.ts +0 -0
  426. /package/{models → dist/cjs/models}/method/patch/PatchJson.d.ts +0 -0
  427. /package/{option → dist/cjs/option}/HttpServerOption.d.ts +0 -0
  428. /package/{resolvers → dist/cjs/resolvers}/Resolver.d.ts +0 -0
  429. /package/{session → dist/cjs/session}/SessionManager.d.ts +0 -0
@@ -0,0 +1,593 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
+ // If the importer is in node compatibility mode or this is not an ESM
21
+ // file that has been converted to a CommonJS file using a Babel-
22
+ // compatible transform (i.e. "__esModule" has not been set), then set
23
+ // "default" to the CommonJS "module.exports" for node compatibility.
24
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
+ mod
26
+ ));
27
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
+
29
+ // src/models/index.ts
30
+ var models_exports = {};
31
+ __export(models_exports, {
32
+ HeaderData: () => HeaderData,
33
+ PatchJson: () => PatchJson,
34
+ ReqFormUrlBody: () => ReqFormUrlBody,
35
+ ReqHeader: () => ReqHeader,
36
+ ReqJsonBody: () => ReqJsonBody,
37
+ ReqMultipartFormBody: () => ReqMultipartFormBody,
38
+ RequestResponse: () => RequestResponse,
39
+ RequestResponseChain: () => RequestResponseChain,
40
+ Resource: () => Resource
41
+ });
42
+ module.exports = __toCommonJS(models_exports);
43
+
44
+ // src/models/RequestResponse.ts
45
+ var import_Intent = require("@dooboostore/simple-boot/intent/Intent");
46
+ var import_url = require("url");
47
+ var import_buffer = require("buffer");
48
+
49
+ // src/models/datas/body/ReqFormUrlBody.ts
50
+ var ReqFormUrlBody = class {
51
+ };
52
+
53
+ // src/models/datas/body/ReqJsonBody.ts
54
+ var ReqJsonBody = class {
55
+ };
56
+
57
+ // src/models/datas/ReqHeader.ts
58
+ var ReqHeader = class {
59
+ };
60
+
61
+ // src/models/RequestResponse.ts
62
+ var import_node_gzip = require("node-gzip");
63
+ var import_FileUtils = require("@dooboostore/core-node/file/FileUtils");
64
+ var import_ConvertUtils = require("@dooboostore/core/convert/ConvertUtils");
65
+ var import_ConvertUtils2 = require("@dooboostore/core-node/convert/ConvertUtils");
66
+ var RequestResponse = class _RequestResponse {
67
+ // protected sessionManager?: SessionManager;
68
+ // constructor(req: IncomingMessage, res: ServerResponse);
69
+ // constructor(req: RequestResponse);
70
+ // constructor(req: IncomingMessage, res: ServerResponse, sessionManager?: SessionManager);
71
+ // constructor(req: IncomingMessage | RequestResponse, res?: ServerResponse, sessionManager?: SessionManager) {
72
+ // // this.req = req;
73
+ // // this.res = res;
74
+ // if (req instanceof RequestResponse) {
75
+ // this.req = req.req;
76
+ // this.res = req.res;
77
+ // this.sessionManager = req.sessionManager;
78
+ // } else {
79
+ // this.req = req;
80
+ // this.res = res!;
81
+ // this.sessionManager = sessionManager;
82
+ // }
83
+ // }
84
+ constructor(req, res, config) {
85
+ if (req instanceof _RequestResponse) {
86
+ this.req = req.req;
87
+ this.res = req.res;
88
+ this.config = config;
89
+ } else {
90
+ this.req = req;
91
+ this.res = res;
92
+ this.config = config;
93
+ }
94
+ }
95
+ get reqSocket() {
96
+ return this.req.socket;
97
+ }
98
+ get reqCookieMap() {
99
+ let cookies = this.reqHeader("Cookie" /* Cookie */) ?? "";
100
+ if (Array.isArray(cookies)) {
101
+ cookies = cookies.join(";");
102
+ }
103
+ const map = /* @__PURE__ */ new Map();
104
+ cookies.split(";").map((it) => it.trim().split("=")).forEach((it) => {
105
+ map.set(it[0], it[1]);
106
+ });
107
+ return map;
108
+ }
109
+ reqCookieGet(key) {
110
+ return this.reqCookieMap.get(key);
111
+ }
112
+ get reqRemoteAddress() {
113
+ const ipHeader = this.req.headers["x-forwarded-for"];
114
+ let ip = this.req.socket.remoteAddress;
115
+ if (Array.isArray(ipHeader)) {
116
+ ip = ipHeader.join(",").split(",").shift();
117
+ } else if (typeof ipHeader === "string") {
118
+ ip = ipHeader.split(",").shift();
119
+ }
120
+ return ip;
121
+ }
122
+ get reqUrlObject() {
123
+ return new import_url.URL(this.reqUrl, `${this.reqSocket ? "https://" : "http"}${this.reqHost ?? "localhost"}`);
124
+ }
125
+ get reqUrlPathName() {
126
+ return this.reqUrlObj().pathname ?? "";
127
+ }
128
+ get reqUrl() {
129
+ return this.req.url ?? "";
130
+ }
131
+ reqUrlObj(config) {
132
+ return new import_url.URL(`${config?.scheme ?? "http"}://${config?.host ? config?.host : this.reqHeaderFirst("Host" /* Host */) ?? "localhost"}${this.req.url ?? ""}`);
133
+ }
134
+ get reqUrlSearchParamTuples() {
135
+ return Array.from(this.reqUrlObj().searchParams);
136
+ }
137
+ get reqUrlSearchParams() {
138
+ return this.reqUrlObj().searchParams;
139
+ }
140
+ get reqUrlSearchParamsObj() {
141
+ const entries = this.reqUrlObj().searchParams;
142
+ return import_ConvertUtils.ConvertUtils.toObject(entries);
143
+ }
144
+ get reqPathSearchParamUrl() {
145
+ const reqUrlObj = this.reqUrlObj();
146
+ return reqUrlObj.pathname + (reqUrlObj.searchParams.toString() ? "?" + reqUrlObj.searchParams.toString() : "");
147
+ }
148
+ get reqReadable() {
149
+ return this.req.readable;
150
+ }
151
+ get reqIntent() {
152
+ return new import_Intent.Intent(this.reqPathSearchParamUrl);
153
+ }
154
+ reqHasContentTypeHeader(mime2) {
155
+ return (this.reqHeaderFirst("Content-Type" /* ContentType */) ?? "").toLowerCase().indexOf(mime2.toLocaleLowerCase()) > -1;
156
+ }
157
+ reqHasAcceptHeader(mime2) {
158
+ return (this.reqHeaderFirst("Accept" /* Accept */) ?? "").toLowerCase().indexOf(mime2.toLocaleLowerCase()) > -1;
159
+ }
160
+ reqBodyData() {
161
+ return new Promise((resolve, reject) => {
162
+ if (this.reqReadable) {
163
+ const data = [];
164
+ this.req.on("data", (chunk) => data.push(chunk));
165
+ this.req.on("error", (err) => reject(err));
166
+ this.req.on("end", () => {
167
+ this.reqBodyChunk = import_buffer.Buffer.concat(data);
168
+ resolve(this.reqBodyChunk);
169
+ });
170
+ } else {
171
+ resolve(this.reqBodyChunk ?? import_buffer.Buffer.alloc(0));
172
+ }
173
+ });
174
+ }
175
+ resBodyData() {
176
+ return this.resWriteChunk;
177
+ }
178
+ async reqBodyMultipartFormDataObject() {
179
+ const m = await this.reqBodyMultipartFormData();
180
+ const formData = {};
181
+ for (const it of m) {
182
+ if (it.isFile) {
183
+ formData[it.name] = await import_FileUtils.FileUtils.writeFile(it.value, { originalName: it.filename });
184
+ } else {
185
+ const target = formData[it.name];
186
+ if (Array.isArray(target)) {
187
+ target.push(it.value);
188
+ } else if (typeof target === "string") {
189
+ formData[it.name] = [target, it.value];
190
+ } else {
191
+ formData[it.name] = it.value;
192
+ }
193
+ }
194
+ }
195
+ ;
196
+ return formData;
197
+ }
198
+ reqBodyMultipartFormData() {
199
+ return new Promise((resolve, reject) => {
200
+ const contentTypeHeader = this.req.headers["content-type"];
201
+ if (!contentTypeHeader || !contentTypeHeader.startsWith("multipart/form-data")) {
202
+ return reject(new Error("Invalid Content-Type. Expected multipart/form-data."));
203
+ }
204
+ const boundaryMatch = contentTypeHeader.match(/boundary=(?:"([^"]+)"|([^;]+))/i);
205
+ if (!boundaryMatch) {
206
+ return reject(new Error("Boundary not found in Content-Type header."));
207
+ }
208
+ const boundary = boundaryMatch[1] || boundaryMatch[2];
209
+ if (!boundary) {
210
+ return reject(new Error("Failed to extract boundary."));
211
+ }
212
+ const boundaryBuffer = import_buffer.Buffer.from(`--${boundary}`);
213
+ const crlfBuffer = import_buffer.Buffer.from("\r\n");
214
+ const doubleCrlfBuffer = import_buffer.Buffer.from("\r\n\r\n");
215
+ const chunks = [];
216
+ let totalLength = 0;
217
+ this.req.on("data", (chunk) => {
218
+ chunks.push(chunk);
219
+ totalLength += chunk.length;
220
+ });
221
+ this.req.on("error", (err) => {
222
+ reject(err);
223
+ });
224
+ this.req.on("end", () => {
225
+ if (totalLength === 0) {
226
+ return resolve([]);
227
+ }
228
+ const fullBuffer = import_buffer.Buffer.concat(chunks, totalLength);
229
+ const parsedParts = [];
230
+ let currentPosition = 0;
231
+ let boundaryStartIndex = fullBuffer.indexOf(boundaryBuffer, currentPosition);
232
+ if (boundaryStartIndex === -1) {
233
+ return reject(new Error("Initial boundary not found."));
234
+ }
235
+ currentPosition = boundaryStartIndex + boundaryBuffer.length;
236
+ if (fullBuffer.slice(currentPosition, currentPosition + crlfBuffer.length).equals(crlfBuffer)) {
237
+ currentPosition += crlfBuffer.length;
238
+ }
239
+ while (currentPosition < fullBuffer.length) {
240
+ const nextBoundaryIndex = fullBuffer.indexOf(boundaryBuffer, currentPosition);
241
+ if (nextBoundaryIndex === -1) {
242
+ break;
243
+ }
244
+ let partEndIndex = nextBoundaryIndex;
245
+ if (partEndIndex > crlfBuffer.length && fullBuffer.slice(partEndIndex - crlfBuffer.length, partEndIndex).equals(crlfBuffer)) {
246
+ partEndIndex -= crlfBuffer.length;
247
+ }
248
+ const partBuffer = fullBuffer.slice(currentPosition, partEndIndex);
249
+ const headerBodySeparatorIndex = partBuffer.indexOf(doubleCrlfBuffer);
250
+ if (headerBodySeparatorIndex === -1) {
251
+ console.warn("Skipping malformed part: no header/body separator found.");
252
+ currentPosition = nextBoundaryIndex + boundaryBuffer.length;
253
+ if (fullBuffer.slice(currentPosition, currentPosition + crlfBuffer.length).equals(crlfBuffer)) {
254
+ currentPosition += crlfBuffer.length;
255
+ }
256
+ if (fullBuffer.slice(currentPosition, currentPosition + 2).toString() === "--") break;
257
+ continue;
258
+ }
259
+ const headerBuffer = partBuffer.slice(0, headerBodySeparatorIndex);
260
+ const bodyBuffer = partBuffer.slice(headerBodySeparatorIndex + doubleCrlfBuffer.length);
261
+ const headersStr = headerBuffer.toString("utf-8");
262
+ const headers = {};
263
+ headersStr.split("\r\n").forEach((line) => {
264
+ const colonIndex = line.indexOf(":");
265
+ if (colonIndex > 0) {
266
+ const key = line.substring(0, colonIndex).trim().toLowerCase();
267
+ const value = line.substring(colonIndex + 1).trim();
268
+ headers[key] = value;
269
+ }
270
+ });
271
+ const contentDisposition = headers["content-disposition"];
272
+ if (!contentDisposition) {
273
+ console.warn("Skipping part: no Content-Disposition header.");
274
+ currentPosition = nextBoundaryIndex + boundaryBuffer.length;
275
+ if (fullBuffer.slice(currentPosition, currentPosition + crlfBuffer.length).equals(crlfBuffer)) {
276
+ currentPosition += crlfBuffer.length;
277
+ }
278
+ if (fullBuffer.slice(currentPosition, currentPosition + 2).toString() === "--") break;
279
+ continue;
280
+ }
281
+ const nameMatch = contentDisposition.match(/name="([^"]+)"/i);
282
+ const filenameMatch = contentDisposition.match(/filename="([^"]+)"/i);
283
+ const name = nameMatch ? nameMatch[1] : null;
284
+ const filename = filenameMatch ? filenameMatch[1] : null;
285
+ const contentType = headers["content-type"] || null;
286
+ if (name) {
287
+ const isFile = !!filename;
288
+ const multipartData = {
289
+ name,
290
+ isFile,
291
+ // filename이 있으면 파일로 간주
292
+ filename,
293
+ contentType,
294
+ value: isFile ? bodyBuffer : bodyBuffer.toString("utf-8")
295
+ };
296
+ parsedParts.push(multipartData);
297
+ } else {
298
+ console.warn("Skipping part: 'name' not found in Content-Disposition.");
299
+ }
300
+ currentPosition = nextBoundaryIndex + boundaryBuffer.length;
301
+ if (fullBuffer.slice(currentPosition, currentPosition + crlfBuffer.length).equals(crlfBuffer)) {
302
+ currentPosition += crlfBuffer.length;
303
+ }
304
+ if (fullBuffer.slice(currentPosition, currentPosition + 2).toString() === "--") {
305
+ break;
306
+ }
307
+ }
308
+ resolve(parsedParts);
309
+ });
310
+ });
311
+ }
312
+ async reqBodyStringData() {
313
+ const data = (await this.reqBodyData()).toString();
314
+ return data;
315
+ }
316
+ async reqBodyJsonData() {
317
+ return JSON.parse(await this.reqBodyStringData());
318
+ }
319
+ async reqBodyFormUrlData() {
320
+ const data = await this.reqBodyStringData();
321
+ const formData = {};
322
+ Array.from(new import_url.URLSearchParams(data).entries()).forEach(([k, v]) => {
323
+ const target = formData[k];
324
+ if (Array.isArray(target)) {
325
+ target.push(v);
326
+ } else if (typeof target === "string") {
327
+ formData[k] = [target, v];
328
+ } else {
329
+ formData[k] = v;
330
+ }
331
+ });
332
+ return formData;
333
+ }
334
+ async reqBodyReqFormUrlBody() {
335
+ const data = await this.reqBodyFormUrlData();
336
+ return Object.assign(new ReqFormUrlBody(), data);
337
+ }
338
+ async reqBodyReqJsonBody() {
339
+ const data = await this.reqBodyStringData();
340
+ return Object.assign(new ReqJsonBody(), data ? JSON.parse(data) : {});
341
+ }
342
+ // reqBodyReqMultipartFormBody(): Promise<ReqMultipartFormBody> {
343
+ // return this.reqBodyMultipartFormData().then(it => new ReqMultipartFormBody(it))
344
+ // }
345
+ resBodyJsonData() {
346
+ const data = import_ConvertUtils2.ConvertUtils.toString(this.resBodyData());
347
+ return data ? JSON.parse(data) : null;
348
+ }
349
+ resBodyStringData() {
350
+ return import_ConvertUtils2.ConvertUtils.toString(this.resBodyData());
351
+ }
352
+ reqMethod() {
353
+ return this.req.method?.toUpperCase();
354
+ }
355
+ reqHeader(key) {
356
+ return this.req.headers[key.toLowerCase()];
357
+ }
358
+ get reqHost() {
359
+ return this.reqHeaderFirst("Host" /* Host */);
360
+ }
361
+ get reqHeaderObj() {
362
+ const h = new ReqHeader();
363
+ Object.entries(this.req.headers).forEach(([k, v]) => {
364
+ h[k] = v;
365
+ });
366
+ return h;
367
+ }
368
+ reqHeaderFirst(key, defaultValue) {
369
+ const header = this.req.headers[key.toLowerCase()];
370
+ if (header && Array.isArray(header)) {
371
+ return header[0] ?? defaultValue;
372
+ } else {
373
+ return header ?? defaultValue;
374
+ }
375
+ }
376
+ reqAuthorizationHeader() {
377
+ return this.reqHeaderFirst("Authorization" /* Authorization */);
378
+ }
379
+ reqRefreshTokenHeader() {
380
+ return this.reqHeaderFirst("Authorization" /* Authorization */);
381
+ }
382
+ // eslint-disable-next-line no-dupe-class-members
383
+ resStatusCode(code) {
384
+ if (code) {
385
+ this.res.statusCode = code;
386
+ return new RequestResponseChain(this.req, this.res, this.config, this.res.statusCode);
387
+ } else {
388
+ return this.res.statusCode;
389
+ }
390
+ }
391
+ resHeader(key) {
392
+ return this.res.getHeader(key.toLowerCase());
393
+ }
394
+ resHeaderFirst(key, defaultValue) {
395
+ const header = this.res.getHeader(key.toLowerCase());
396
+ if (header && Array.isArray(header)) {
397
+ return header[0] ?? defaultValue;
398
+ } else {
399
+ return header ?? defaultValue;
400
+ }
401
+ }
402
+ async reqSession() {
403
+ if (this.config.sessionManager) {
404
+ return (await this.config.sessionManager.session(this)).dataSet.data;
405
+ } else {
406
+ return Promise.reject(new Error("Not SessionManager"));
407
+ }
408
+ }
409
+ reqSessionSet(key, value) {
410
+ this.reqSession[key] = value;
411
+ }
412
+ reqSessionGet(key) {
413
+ const session = this.reqSession;
414
+ if (session) {
415
+ return session[key];
416
+ }
417
+ }
418
+ resSetStatusCode(statusCode) {
419
+ this.res.statusCode = statusCode;
420
+ return this.createRequestResponseChain(this.res.statusCode);
421
+ }
422
+ // resEnd() {
423
+ // this.res.end();
424
+ // }
425
+ // eslint-disable-next-line no-undef
426
+ resWrite(chunk, encoding = "utf8") {
427
+ this.resWriteChunk = chunk;
428
+ return this.createRequestResponseChain(this.resWriteChunk);
429
+ }
430
+ // eslint-disable-next-line no-undef
431
+ resWriteJson(chunk, encoding = "utf8") {
432
+ return this.resWrite(JSON.stringify(chunk), encoding);
433
+ }
434
+ resSetHeader(key, value) {
435
+ return this.createRequestResponseChain(this.res.setHeader(key.toLowerCase(), value));
436
+ }
437
+ resAddHeader(key, value) {
438
+ const existingValue = this.res.getHeader(key.toLowerCase());
439
+ const newValue = Array.isArray(existingValue) ? existingValue.concat(value) : existingValue ? [existingValue.toString(), ...[].concat(value)] : value;
440
+ return this.createRequestResponseChain(this.res.setHeader(key.toLowerCase(), newValue));
441
+ }
442
+ resSetHeaders(headers) {
443
+ Object.entries(headers).forEach(([key, value]) => this.resSetHeader(key, value));
444
+ return this.createRequestResponseChain();
445
+ }
446
+ resAddHeaders(headers) {
447
+ Object.entries(headers).forEach(([key, value]) => this.resAddHeader(key, value));
448
+ return this.createRequestResponseChain();
449
+ }
450
+ // 마지막 종료될때 타는거.
451
+ async resEndChunk() {
452
+ const encoding = this.reqHeaderFirst("Accept-Encoding" /* AcceptEncoding */);
453
+ let data = this.resWriteChunk;
454
+ if (encoding?.includes("gzip")) {
455
+ data = await (0, import_node_gzip.gzip)(data);
456
+ this.resSetHeader("Content-Encoding" /* ContentEncoding */, "gzip");
457
+ }
458
+ this.res.end(data);
459
+ }
460
+ async resEnd(chunk) {
461
+ this.resWriteChunk = chunk ?? this.resWriteChunk;
462
+ if (this.req.readable) {
463
+ await this.reqBodyData();
464
+ await this.resEndChunk();
465
+ } else {
466
+ await this.resEndChunk();
467
+ }
468
+ }
469
+ // writeContinue(callback?: () => void) {
470
+ // this.res.writeContinue(callback);
471
+ // return new RequestResponseChain(this.req, this.res);
472
+ // }
473
+ // reqWrite(chunk?: any) {
474
+ // this.resWriteChunk = chunk;
475
+ // // this.res.write(chunk);
476
+ // return this.createRequestResponseChain();
477
+ // }
478
+ resWriteHead(statusCode, headers) {
479
+ return this.createRequestResponseChain(this.res.writeHead(statusCode, headers));
480
+ }
481
+ resWriteHeadEnd(statusCode, headers) {
482
+ this.createRequestResponseChain(this.res.writeHead(statusCode, headers));
483
+ this.res.end();
484
+ }
485
+ resIsDone() {
486
+ return this.res.finished || this.res.writableEnded || this.res.headersSent;
487
+ }
488
+ createRequestResponseChain(data) {
489
+ const requestResponseChain = new RequestResponseChain(this.req, this.res, this.config, data);
490
+ requestResponseChain.resWriteChunk = this.resWriteChunk;
491
+ requestResponseChain.reqBodyChunk = this.reqBodyChunk;
492
+ return requestResponseChain;
493
+ }
494
+ // res.on("readable", () => {
495
+ // console.log('readable???')
496
+ // });
497
+ // res.on('complete', function (details) {
498
+ // var size = details.req.bytes;
499
+ // console.log('complete-->', size)
500
+ // });
501
+ // res.on('finish', function() {
502
+ // console.log('finish??');
503
+ // });
504
+ // res.on('end', () => {
505
+ // console.log('end--?')
506
+ // });
507
+ };
508
+ var RequestResponseChain = class extends RequestResponse {
509
+ constructor(req, res, config, result) {
510
+ super(req, res, config);
511
+ this.result = result;
512
+ }
513
+ };
514
+
515
+ // src/models/datas/HeaderData.ts
516
+ var HeaderData = class {
517
+ constructor(header, data) {
518
+ this.header = header;
519
+ this.data = data;
520
+ }
521
+ };
522
+
523
+ // src/models/datas/Resource.ts
524
+ var import_fs = __toESM(require("fs"), 1);
525
+ var import_path = __toESM(require("path"), 1);
526
+ var import_mime_types = __toESM(require("mime-types"), 1);
527
+ var Resource = class {
528
+ constructor(path2, rootPath = process.cwd()) {
529
+ this.path = path2;
530
+ this.rootPath = rootPath;
531
+ }
532
+ get absolutePath() {
533
+ if (this.path instanceof RequestResponse) {
534
+ return import_path.default.join(this.rootPath, this.path.reqUrlObj().pathname);
535
+ } else if (this.path instanceof URL) {
536
+ return import_path.default.join(this.rootPath, this.path.pathname);
537
+ } else {
538
+ return import_path.default.join(this.rootPath, this.path);
539
+ }
540
+ }
541
+ get conTentType() {
542
+ return import_mime_types.default.lookup(this.absolutePath).toString();
543
+ }
544
+ get data() {
545
+ const promise = new Promise((resolve, reject) => {
546
+ import_fs.default.readFile("", (error, fileBuffer) => {
547
+ if (error) {
548
+ reject(error);
549
+ }
550
+ const fileContent = fileBuffer.toString();
551
+ resolve(fileContent);
552
+ });
553
+ });
554
+ return promise;
555
+ }
556
+ async write(rr) {
557
+ rr.resStatusCode(200 /* Ok */);
558
+ rr.resSetHeader("Content-Type" /* ContentType */, this.conTentType);
559
+ await rr.resEnd(import_fs.default.readFileSync(this.absolutePath));
560
+ }
561
+ };
562
+
563
+ // src/models/datas/body/ReqMultipartFormBody.ts
564
+ var ReqMultipartFormBody = class {
565
+ constructor(field = []) {
566
+ this.field = field;
567
+ }
568
+ };
569
+
570
+ // src/models/method/patch/PatchJson.ts
571
+ var import_fast_json_patch = __toESM(require("fast-json-patch"), 1);
572
+ var PatchJson = class {
573
+ constructor(patch) {
574
+ this.patch = patch;
575
+ }
576
+ apply(obj) {
577
+ obj = import_fast_json_patch.default.applyPatch(obj, this.patch).newDocument;
578
+ return obj;
579
+ }
580
+ };
581
+ // Annotate the CommonJS export names for ESM import in node:
582
+ 0 && (module.exports = {
583
+ HeaderData,
584
+ PatchJson,
585
+ ReqFormUrlBody,
586
+ ReqHeader,
587
+ ReqJsonBody,
588
+ ReqMultipartFormBody,
589
+ RequestResponse,
590
+ RequestResponseChain,
591
+ Resource
592
+ });
593
+ //# sourceMappingURL=index.js.map