jimpex 7.0.2 → 9.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (438) hide show
  1. package/CHANGELOG.md +93 -0
  2. package/LICENSE +1 -1
  3. package/README.md +447 -435
  4. package/dist/app/index.d.mts +14 -0
  5. package/dist/app/index.d.ts +14 -0
  6. package/dist/app/index.js +23 -0
  7. package/dist/app/index.js.map +1 -0
  8. package/dist/app/jimpex.d.mts +14 -0
  9. package/dist/app/jimpex.d.ts +14 -0
  10. package/dist/app/jimpex.js +665 -0
  11. package/dist/app/jimpex.js.map +1 -0
  12. package/dist/controllers/common/config.d.mts +79 -0
  13. package/dist/controllers/common/config.d.ts +79 -0
  14. package/dist/controllers/common/config.js +107 -0
  15. package/dist/controllers/common/config.js.map +1 -0
  16. package/dist/controllers/common/health.d.mts +83 -0
  17. package/dist/controllers/common/health.d.ts +83 -0
  18. package/dist/controllers/common/health.js +115 -0
  19. package/dist/controllers/common/health.js.map +1 -0
  20. package/dist/controllers/common/index.d.mts +21 -0
  21. package/dist/controllers/common/index.d.ts +21 -0
  22. package/dist/controllers/common/index.js +27 -0
  23. package/dist/controllers/common/index.js.map +1 -0
  24. package/dist/controllers/common/statics.d.mts +215 -0
  25. package/dist/controllers/common/statics.d.ts +215 -0
  26. package/dist/controllers/common/statics.js +253 -0
  27. package/dist/controllers/common/statics.js.map +1 -0
  28. package/dist/controllers/index.d.mts +24 -0
  29. package/dist/controllers/index.d.ts +24 -0
  30. package/dist/controllers/index.js +25 -0
  31. package/dist/controllers/index.js.map +1 -0
  32. package/dist/controllers/utils/gateway.d.mts +725 -0
  33. package/dist/controllers/utils/gateway.d.ts +725 -0
  34. package/dist/controllers/utils/gateway.js +577 -0
  35. package/dist/controllers/utils/gateway.js.map +1 -0
  36. package/dist/controllers/utils/index.d.mts +17 -0
  37. package/dist/controllers/utils/index.d.ts +17 -0
  38. package/dist/controllers/utils/index.js +23 -0
  39. package/dist/controllers/utils/index.js.map +1 -0
  40. package/dist/esm/app/index.js +2 -0
  41. package/dist/esm/app/index.js.map +1 -0
  42. package/dist/esm/app/jimpex.js +636 -0
  43. package/dist/esm/app/jimpex.js.map +1 -0
  44. package/dist/esm/chunk-2B2CG5KL.js +11 -0
  45. package/dist/esm/chunk-2B2CG5KL.js.map +1 -0
  46. package/dist/esm/controllers/common/config.js +80 -0
  47. package/dist/esm/controllers/common/config.js.map +1 -0
  48. package/dist/esm/controllers/common/health.js +88 -0
  49. package/dist/esm/controllers/common/health.js.map +1 -0
  50. package/dist/esm/controllers/common/index.js +4 -0
  51. package/dist/esm/controllers/common/index.js.map +1 -0
  52. package/dist/esm/controllers/common/statics.js +220 -0
  53. package/dist/esm/controllers/common/statics.js.map +1 -0
  54. package/dist/esm/controllers/index.js +3 -0
  55. package/dist/esm/controllers/index.js.map +1 -0
  56. package/dist/esm/controllers/utils/gateway.js +556 -0
  57. package/dist/esm/controllers/utils/gateway.js.map +1 -0
  58. package/dist/esm/controllers/utils/index.js +2 -0
  59. package/dist/esm/controllers/utils/index.js.map +1 -0
  60. package/dist/esm/index.js +7 -0
  61. package/dist/esm/index.js.map +1 -0
  62. package/dist/esm/middlewares/common/errorHandler.js +116 -0
  63. package/dist/esm/middlewares/common/errorHandler.js.map +1 -0
  64. package/dist/esm/middlewares/common/forceHTTPS.js +53 -0
  65. package/dist/esm/middlewares/common/forceHTTPS.js.map +1 -0
  66. package/dist/esm/middlewares/common/hsts.js +74 -0
  67. package/dist/esm/middlewares/common/hsts.js.map +1 -0
  68. package/dist/esm/middlewares/common/index.js +4 -0
  69. package/dist/esm/middlewares/common/index.js.map +1 -0
  70. package/dist/esm/middlewares/html/fastHTML.js +158 -0
  71. package/dist/esm/middlewares/html/fastHTML.js.map +1 -0
  72. package/dist/esm/middlewares/html/index.js +3 -0
  73. package/dist/esm/middlewares/html/index.js.map +1 -0
  74. package/dist/esm/middlewares/html/showHTML.js +100 -0
  75. package/dist/esm/middlewares/html/showHTML.js.map +1 -0
  76. package/dist/esm/middlewares/index.js +4 -0
  77. package/dist/esm/middlewares/index.js.map +1 -0
  78. package/dist/esm/middlewares/utils/index.js +2 -0
  79. package/dist/esm/middlewares/utils/index.js.map +1 -0
  80. package/dist/esm/middlewares/utils/versionValidator.js +135 -0
  81. package/dist/esm/middlewares/utils/versionValidator.js.map +1 -0
  82. package/dist/esm/services/common/appError.js +98 -0
  83. package/dist/esm/services/common/appError.js.map +1 -0
  84. package/dist/esm/services/common/httpError.js +28 -0
  85. package/dist/esm/services/common/httpError.js.map +1 -0
  86. package/dist/esm/services/common/index.js +17 -0
  87. package/dist/esm/services/common/index.js.map +1 -0
  88. package/dist/esm/services/common/sendFile.js +27 -0
  89. package/dist/esm/services/common/sendFile.js.map +1 -0
  90. package/dist/esm/services/frontend/frontendFs.js +66 -0
  91. package/dist/esm/services/frontend/frontendFs.js.map +1 -0
  92. package/dist/esm/services/frontend/index.js +11 -0
  93. package/dist/esm/services/frontend/index.js.map +1 -0
  94. package/dist/esm/services/html/htmlGenerator.js +194 -0
  95. package/dist/esm/services/html/htmlGenerator.js.map +1 -0
  96. package/dist/esm/services/html/index.js +11 -0
  97. package/dist/esm/services/html/index.js.map +1 -0
  98. package/dist/esm/services/http/apiClient.js +97 -0
  99. package/dist/esm/services/http/apiClient.js.map +1 -0
  100. package/dist/esm/services/http/http.js +174 -0
  101. package/dist/esm/services/http/http.js.map +1 -0
  102. package/dist/esm/services/http/index.js +17 -0
  103. package/dist/esm/services/http/index.js.map +1 -0
  104. package/dist/esm/services/http/responsesBuilder.js +152 -0
  105. package/dist/esm/services/http/responsesBuilder.js.map +1 -0
  106. package/dist/esm/services/index.js +6 -0
  107. package/dist/esm/services/index.js.map +1 -0
  108. package/dist/esm/services/utils/ensureBearerToken.js +94 -0
  109. package/dist/esm/services/utils/ensureBearerToken.js.map +1 -0
  110. package/dist/esm/services/utils/index.js +11 -0
  111. package/dist/esm/services/utils/index.js.map +1 -0
  112. package/dist/esm/types/events.js +1 -0
  113. package/dist/esm/types/events.js.map +1 -0
  114. package/dist/esm/types/express.js +1 -0
  115. package/dist/esm/types/express.js.map +1 -0
  116. package/dist/esm/types/http.js +1 -0
  117. package/dist/esm/types/http.js.map +1 -0
  118. package/dist/esm/types/index.js +7 -0
  119. package/dist/esm/types/index.js.map +1 -0
  120. package/dist/esm/types/options.js +1 -0
  121. package/dist/esm/types/options.js.map +1 -0
  122. package/dist/esm/types/utils.js +1 -0
  123. package/dist/esm/types/utils.js.map +1 -0
  124. package/dist/esm/types/wootils.js +1 -0
  125. package/dist/esm/types/wootils.js.map +1 -0
  126. package/dist/esm/utils/fns/index.js +5 -0
  127. package/dist/esm/utils/fns/index.js.map +1 -0
  128. package/dist/esm/utils/fns/others.js +6 -0
  129. package/dist/esm/utils/fns/others.js.map +1 -0
  130. package/dist/esm/utils/fns/routes.js +25 -0
  131. package/dist/esm/utils/fns/routes.js.map +1 -0
  132. package/dist/esm/utils/fns/statuses.js +6 -0
  133. package/dist/esm/utils/fns/statuses.js.map +1 -0
  134. package/dist/esm/utils/fns/text.js +6 -0
  135. package/dist/esm/utils/fns/text.js.map +1 -0
  136. package/dist/esm/utils/index.js +3 -0
  137. package/dist/esm/utils/index.js.map +1 -0
  138. package/dist/esm/utils/wrappers.js +41 -0
  139. package/dist/esm/utils/wrappers.js.map +1 -0
  140. package/dist/index-b2a04c78.d.ts +1282 -0
  141. package/dist/index-efeb437e.d.ts +1282 -0
  142. package/dist/index.d.mts +46 -0
  143. package/dist/index.d.ts +46 -0
  144. package/dist/index.js +33 -0
  145. package/dist/index.js.map +1 -0
  146. package/dist/middlewares/common/errorHandler.d.mts +132 -0
  147. package/dist/middlewares/common/errorHandler.d.ts +132 -0
  148. package/dist/middlewares/common/errorHandler.js +143 -0
  149. package/dist/middlewares/common/errorHandler.js.map +1 -0
  150. package/dist/middlewares/common/forceHTTPS.d.mts +69 -0
  151. package/dist/middlewares/common/forceHTTPS.d.ts +69 -0
  152. package/dist/middlewares/common/forceHTTPS.js +80 -0
  153. package/dist/middlewares/common/forceHTTPS.js.map +1 -0
  154. package/dist/middlewares/common/hsts.d.mts +110 -0
  155. package/dist/middlewares/common/hsts.d.ts +110 -0
  156. package/dist/middlewares/common/hsts.js +101 -0
  157. package/dist/middlewares/common/hsts.js.map +1 -0
  158. package/dist/middlewares/common/index.d.mts +22 -0
  159. package/dist/middlewares/common/index.d.ts +22 -0
  160. package/dist/middlewares/common/index.js +27 -0
  161. package/dist/middlewares/common/index.js.map +1 -0
  162. package/dist/middlewares/html/fastHTML.d.mts +180 -0
  163. package/dist/middlewares/html/fastHTML.d.ts +180 -0
  164. package/dist/middlewares/html/fastHTML.js +185 -0
  165. package/dist/middlewares/html/fastHTML.js.map +1 -0
  166. package/dist/middlewares/html/index.d.mts +21 -0
  167. package/dist/middlewares/html/index.d.ts +21 -0
  168. package/dist/middlewares/html/index.js +25 -0
  169. package/dist/middlewares/html/index.js.map +1 -0
  170. package/dist/middlewares/html/showHTML.d.mts +127 -0
  171. package/dist/middlewares/html/showHTML.d.ts +127 -0
  172. package/dist/middlewares/html/showHTML.js +127 -0
  173. package/dist/middlewares/html/showHTML.js.map +1 -0
  174. package/dist/middlewares/index.d.mts +30 -0
  175. package/dist/middlewares/index.d.ts +30 -0
  176. package/dist/middlewares/index.js +27 -0
  177. package/dist/middlewares/index.js.map +1 -0
  178. package/dist/middlewares/utils/index.d.mts +20 -0
  179. package/dist/middlewares/utils/index.d.ts +20 -0
  180. package/dist/middlewares/utils/index.js +23 -0
  181. package/dist/middlewares/utils/index.js.map +1 -0
  182. package/dist/middlewares/utils/versionValidator.d.mts +215 -0
  183. package/dist/middlewares/utils/versionValidator.d.ts +215 -0
  184. package/dist/middlewares/utils/versionValidator.js +162 -0
  185. package/dist/middlewares/utils/versionValidator.js.map +1 -0
  186. package/dist/services/common/appError.d.mts +139 -0
  187. package/dist/services/common/appError.d.ts +139 -0
  188. package/dist/services/common/appError.js +126 -0
  189. package/dist/services/common/appError.js.map +1 -0
  190. package/dist/services/common/httpError.d.mts +80 -0
  191. package/dist/services/common/httpError.d.ts +80 -0
  192. package/dist/services/common/httpError.js +53 -0
  193. package/dist/services/common/httpError.js.map +1 -0
  194. package/dist/services/common/index.d.mts +47 -0
  195. package/dist/services/common/index.d.ts +47 -0
  196. package/dist/services/common/index.js +44 -0
  197. package/dist/services/common/index.js.map +1 -0
  198. package/dist/services/common/sendFile.d.mts +102 -0
  199. package/dist/services/common/sendFile.d.ts +102 -0
  200. package/dist/services/common/sendFile.js +51 -0
  201. package/dist/services/common/sendFile.js.map +1 -0
  202. package/dist/services/frontend/frontendFs.d.mts +96 -0
  203. package/dist/services/frontend/frontendFs.d.ts +96 -0
  204. package/dist/services/frontend/frontendFs.js +103 -0
  205. package/dist/services/frontend/frontendFs.js.map +1 -0
  206. package/dist/services/frontend/index.d.mts +40 -0
  207. package/dist/services/frontend/index.d.ts +40 -0
  208. package/dist/services/frontend/index.js +36 -0
  209. package/dist/services/frontend/index.js.map +1 -0
  210. package/dist/services/html/htmlGenerator.d.mts +237 -0
  211. package/dist/services/html/htmlGenerator.d.ts +237 -0
  212. package/dist/services/html/htmlGenerator.js +221 -0
  213. package/dist/services/html/htmlGenerator.js.map +1 -0
  214. package/dist/services/html/index.d.mts +43 -0
  215. package/dist/services/html/index.d.ts +43 -0
  216. package/dist/services/html/index.js +36 -0
  217. package/dist/services/html/index.js.map +1 -0
  218. package/dist/services/http/apiClient.d.mts +170 -0
  219. package/dist/services/http/apiClient.d.ts +170 -0
  220. package/dist/services/http/apiClient.js +122 -0
  221. package/dist/services/http/apiClient.js.map +1 -0
  222. package/dist/services/http/http.d.mts +176 -0
  223. package/dist/services/http/http.d.ts +176 -0
  224. package/dist/services/http/http.js +211 -0
  225. package/dist/services/http/http.js.map +1 -0
  226. package/dist/services/http/index.d.mts +51 -0
  227. package/dist/services/http/index.d.ts +51 -0
  228. package/dist/services/http/index.js +44 -0
  229. package/dist/services/http/index.js.map +1 -0
  230. package/dist/services/http/responsesBuilder.d.mts +179 -0
  231. package/dist/services/http/responsesBuilder.d.ts +179 -0
  232. package/dist/services/http/responsesBuilder.js +179 -0
  233. package/dist/services/http/responsesBuilder.js.map +1 -0
  234. package/dist/services/index.d.mts +33 -0
  235. package/dist/services/index.d.ts +33 -0
  236. package/dist/services/index.js +31 -0
  237. package/dist/services/index.js.map +1 -0
  238. package/dist/services/utils/ensureBearerToken.d.mts +158 -0
  239. package/dist/services/utils/ensureBearerToken.d.ts +158 -0
  240. package/dist/services/utils/ensureBearerToken.js +121 -0
  241. package/dist/services/utils/ensureBearerToken.js.map +1 -0
  242. package/dist/services/utils/index.d.mts +44 -0
  243. package/dist/services/utils/index.d.ts +44 -0
  244. package/dist/services/utils/index.js +36 -0
  245. package/dist/services/utils/index.js.map +1 -0
  246. package/dist/types/events.d.mts +14 -0
  247. package/dist/types/events.d.ts +14 -0
  248. package/dist/types/events.js +17 -0
  249. package/dist/types/events.js.map +1 -0
  250. package/dist/types/express.d.mts +10 -0
  251. package/dist/types/express.d.ts +10 -0
  252. package/dist/types/express.js +17 -0
  253. package/dist/types/express.js.map +1 -0
  254. package/dist/types/http.d.mts +79 -0
  255. package/dist/types/http.d.ts +79 -0
  256. package/dist/types/http.js +17 -0
  257. package/dist/types/http.js.map +1 -0
  258. package/dist/types/index.d.mts +14 -0
  259. package/dist/types/index.d.ts +14 -0
  260. package/dist/types/index.js +33 -0
  261. package/dist/types/index.js.map +1 -0
  262. package/dist/types/options.d.mts +14 -0
  263. package/dist/types/options.d.ts +14 -0
  264. package/dist/types/options.js +17 -0
  265. package/dist/types/options.js.map +1 -0
  266. package/dist/types/utils.d.mts +48 -0
  267. package/dist/types/utils.d.ts +48 -0
  268. package/dist/types/utils.js +17 -0
  269. package/dist/types/utils.js.map +1 -0
  270. package/dist/types/wootils.d.mts +4 -0
  271. package/dist/types/wootils.d.ts +4 -0
  272. package/dist/types/wootils.js +17 -0
  273. package/dist/types/wootils.js.map +1 -0
  274. package/dist/utils/fns/index.d.mts +5 -0
  275. package/dist/utils/fns/index.d.ts +5 -0
  276. package/dist/utils/fns/index.js +29 -0
  277. package/dist/utils/fns/index.js.map +1 -0
  278. package/dist/utils/fns/others.d.mts +17 -0
  279. package/dist/utils/fns/others.d.ts +17 -0
  280. package/dist/utils/fns/others.js +29 -0
  281. package/dist/utils/fns/others.js.map +1 -0
  282. package/dist/utils/fns/routes.d.mts +39 -0
  283. package/dist/utils/fns/routes.d.ts +39 -0
  284. package/dist/utils/fns/routes.js +51 -0
  285. package/dist/utils/fns/routes.js.map +1 -0
  286. package/dist/utils/fns/statuses.d.mts +45 -0
  287. package/dist/utils/fns/statuses.d.ts +45 -0
  288. package/dist/utils/fns/statuses.js +39 -0
  289. package/dist/utils/fns/statuses.js.map +1 -0
  290. package/dist/utils/fns/text.d.mts +9 -0
  291. package/dist/utils/fns/text.d.ts +9 -0
  292. package/dist/utils/fns/text.js +29 -0
  293. package/dist/utils/fns/text.js.map +1 -0
  294. package/dist/utils/index.d.mts +19 -0
  295. package/dist/utils/index.d.ts +19 -0
  296. package/dist/utils/index.js +25 -0
  297. package/dist/utils/index.js.map +1 -0
  298. package/dist/utils/wrappers.d.mts +14 -0
  299. package/dist/utils/wrappers.d.ts +14 -0
  300. package/dist/utils/wrappers.js +68 -0
  301. package/dist/utils/wrappers.js.map +1 -0
  302. package/examples/basic/404.html +12 -0
  303. package/examples/basic/README.md +30 -0
  304. package/examples/basic/app.ts +18 -0
  305. package/examples/basic/controller.ts +45 -0
  306. package/examples/basic/index.ts +19 -0
  307. package/examples/basic/middleware.ts +13 -0
  308. package/examples/basic/service.ts +11 -0
  309. package/package.json +60 -39
  310. package/src/app/index.ts +1 -0
  311. package/src/app/jimpex.ts +743 -0
  312. package/src/controllers/common/config.ts +115 -0
  313. package/src/controllers/common/health.ts +128 -0
  314. package/src/controllers/common/index.ts +3 -0
  315. package/src/controllers/common/statics.ts +380 -0
  316. package/src/controllers/index.ts +2 -0
  317. package/src/controllers/utils/gateway.ts +1186 -0
  318. package/src/controllers/utils/index.ts +1 -0
  319. package/src/index.ts +6 -0
  320. package/src/middlewares/common/errorHandler.ts +203 -0
  321. package/src/middlewares/common/forceHTTPS.ts +83 -0
  322. package/src/middlewares/common/hsts.ts +135 -0
  323. package/src/middlewares/common/index.ts +3 -0
  324. package/src/middlewares/html/fastHTML.ts +255 -0
  325. package/src/middlewares/html/index.ts +2 -0
  326. package/src/middlewares/html/showHTML.ts +165 -0
  327. package/src/middlewares/index.ts +3 -0
  328. package/src/middlewares/utils/index.ts +1 -0
  329. package/src/middlewares/utils/versionValidator.ts +289 -0
  330. package/src/services/common/appError.ts +158 -0
  331. package/src/services/common/httpError.ts +74 -0
  332. package/src/services/common/index.ts +29 -0
  333. package/src/services/common/sendFile.ts +106 -0
  334. package/src/services/frontend/frontendFs.ts +101 -0
  335. package/src/services/frontend/index.ts +21 -0
  336. package/src/services/html/htmlGenerator.ts +356 -0
  337. package/src/services/html/index.ts +21 -0
  338. package/src/services/http/apiClient.ts +221 -0
  339. package/src/services/http/http.ts +286 -0
  340. package/src/services/http/index.ts +29 -0
  341. package/src/services/http/responsesBuilder.ts +265 -0
  342. package/src/services/index.ts +5 -0
  343. package/src/services/utils/ensureBearerToken.ts +202 -0
  344. package/src/services/utils/index.ts +21 -0
  345. package/src/types/events.ts +303 -0
  346. package/src/types/express.ts +21 -0
  347. package/src/types/http.ts +77 -0
  348. package/src/types/index.ts +6 -0
  349. package/src/types/options.ts +248 -0
  350. package/src/types/utils.ts +52 -0
  351. package/src/types/wootils.ts +4 -0
  352. package/src/utils/fns/index.ts +4 -0
  353. package/src/utils/fns/others.ts +15 -0
  354. package/src/utils/fns/routes.ts +64 -0
  355. package/src/utils/fns/statuses.ts +44 -0
  356. package/src/utils/fns/text.ts +8 -0
  357. package/src/utils/index.ts +2 -0
  358. package/src/utils/wrappers.ts +537 -0
  359. package/tsconfig.json +5 -8
  360. package/tsup.config.ts +10 -0
  361. package/src/app/index.js +0 -692
  362. package/src/constants/eventNames.js +0 -48
  363. package/src/constants/index.js +0 -7
  364. package/src/controllers/common/configuration.js +0 -116
  365. package/src/controllers/common/health.js +0 -79
  366. package/src/controllers/common/index.js +0 -7
  367. package/src/controllers/common/statics.js +0 -336
  368. package/src/controllers/index.js +0 -9
  369. package/src/controllers/utils/gateway.js +0 -1039
  370. package/src/controllers/utils/index.js +0 -3
  371. package/src/index.js +0 -30
  372. package/src/middlewares/common/errorHandler.js +0 -185
  373. package/src/middlewares/common/forceHTTPS.js +0 -80
  374. package/src/middlewares/common/hsts.js +0 -122
  375. package/src/middlewares/common/index.js +0 -7
  376. package/src/middlewares/html/fastHTML.js +0 -298
  377. package/src/middlewares/html/index.js +0 -5
  378. package/src/middlewares/html/showHTML.js +0 -167
  379. package/src/middlewares/index.js +0 -11
  380. package/src/middlewares/utils/index.js +0 -3
  381. package/src/middlewares/utils/versionValidator.js +0 -261
  382. package/src/services/common/appError.js +0 -136
  383. package/src/services/common/httpError.js +0 -60
  384. package/src/services/common/index.js +0 -25
  385. package/src/services/common/sendFile.js +0 -68
  386. package/src/services/frontend/frontendFs.js +0 -85
  387. package/src/services/frontend/index.js +0 -17
  388. package/src/services/html/htmlGenerator.js +0 -391
  389. package/src/services/html/index.js +0 -17
  390. package/src/services/http/apiClient.js +0 -148
  391. package/src/services/http/http.js +0 -256
  392. package/src/services/http/index.js +0 -25
  393. package/src/services/http/responsesBuilder.js +0 -193
  394. package/src/services/index.js +0 -15
  395. package/src/services/utils/ensureBearerToken.js +0 -147
  396. package/src/services/utils/index.js +0 -19
  397. package/src/types.js +0 -377
  398. package/src/utils/functions.js +0 -78
  399. package/src/utils/wrappers.js +0 -131
  400. package/types/app/index.d.ts +0 -417
  401. package/types/constants/eventNames.d.ts +0 -93
  402. package/types/constants/index.d.ts +0 -2
  403. package/types/controllers/common/configuration.d.ts +0 -71
  404. package/types/controllers/common/health.d.ts +0 -55
  405. package/types/controllers/common/index.d.ts +0 -4
  406. package/types/controllers/common/statics.d.ts +0 -271
  407. package/types/controllers/index.d.ts +0 -3
  408. package/types/controllers/utils/gateway.d.ts +0 -947
  409. package/types/controllers/utils/index.d.ts +0 -2
  410. package/types/index.d.ts +0 -15
  411. package/types/middlewares/common/errorHandler.d.ts +0 -143
  412. package/types/middlewares/common/forceHTTPS.d.ts +0 -64
  413. package/types/middlewares/common/hsts.d.ts +0 -111
  414. package/types/middlewares/common/index.d.ts +0 -4
  415. package/types/middlewares/html/fastHTML.d.ts +0 -238
  416. package/types/middlewares/html/index.d.ts +0 -3
  417. package/types/middlewares/html/showHTML.d.ts +0 -128
  418. package/types/middlewares/index.d.ts +0 -4
  419. package/types/middlewares/utils/index.d.ts +0 -2
  420. package/types/middlewares/utils/versionValidator.d.ts +0 -247
  421. package/types/services/common/appError.d.ts +0 -89
  422. package/types/services/common/httpError.d.ts +0 -37
  423. package/types/services/common/index.d.ts +0 -18
  424. package/types/services/common/sendFile.d.ts +0 -56
  425. package/types/services/frontend/frontendFs.d.ts +0 -72
  426. package/types/services/frontend/index.d.ts +0 -3
  427. package/types/services/html/htmlGenerator.d.ts +0 -298
  428. package/types/services/html/index.d.ts +0 -3
  429. package/types/services/http/apiClient.d.ts +0 -141
  430. package/types/services/http/http.d.ts +0 -159
  431. package/types/services/http/index.d.ts +0 -18
  432. package/types/services/http/responsesBuilder.d.ts +0 -140
  433. package/types/services/index.d.ts +0 -6
  434. package/types/services/utils/ensureBearerToken.d.ts +0 -137
  435. package/types/services/utils/index.d.ts +0 -16
  436. package/types/types.d.ts +0 -280
  437. package/types/utils/functions.d.ts +0 -55
  438. package/types/utils/wrappers.d.ts +0 -127
package/src/types.js DELETED
@@ -1,377 +0,0 @@
1
- /**
2
- * @typedef {import('jimple')} Jimple
3
- * @external Jimple
4
- * @see https://yarnpkg.com/en/package/jimple
5
- */
6
-
7
- // ==============================================
8
- // Externals - Wootils
9
- // ==============================================
10
-
11
- /**
12
- * @typedef {import('wootils/esm/node/appConfiguration').AppConfiguration} AppConfiguration
13
- * @external AppConfiguration
14
- * @see https://homer0.github.io/wootils/module-node_appConfiguration.AppConfiguration.html
15
- * @prettierignore
16
- */
17
-
18
- /**
19
- * @typedef {import('wootils/esm/shared/apiClient')} APIClientBase
20
- * @external APIClientBase
21
- * @see https://homer0.github.io/wootils/module-shared_apiClient.APIClient.html
22
- */
23
-
24
- /**
25
- * @typedef {import('wootils/esm/shared/apiClient').APIClientEndpoints} APIClientEndpoints
26
- * @external APIClientEndpoints
27
- * @see https://homer0.github.io/wootils/module-shared_apiClient.html#.APIClientEndpoints
28
- */
29
-
30
- /**
31
- * @typedef {import('wootils/esm/node/pathUtils').PathUtils} PathUtils
32
- * @external PathUtils
33
- * @see https://homer0.github.io/wootils/module-node_pathUtils.PathUtils.html
34
- */
35
-
36
- /**
37
- * @typedef {import('wootils/esm/node/logger').Logger} Logger
38
- * @external Logger
39
- * @see https://homer0.github.io/wootils/module-node_logger.Logger.html
40
- */
41
-
42
- /**
43
- * @typedef {import('wootils/esm/node/environmentUtils').EnvironmentUtils} EnvironmentUtils
44
- * @external EnvironmentUtils
45
- * @see https://homer0.github.io/wootils/module-node_environmentUtils.EnvironmentUtils.html
46
- * @prettierignore
47
- */
48
-
49
- /**
50
- * @typedef {import('wootils/esm/shared/eventsHub')} EventsHub
51
- * @external EventsHub
52
- * @see https://homer0.github.io/wootils/module-shared_eventsHub.html
53
- */
54
-
55
- /**
56
- * @typedef {import('wootils/esm/shared/jimpleFns').Provider} Provider
57
- * @external Provider
58
- * @see https://homer0.github.io/wootils/module-shared_jimpleFns.html#.Provider
59
- */
60
-
61
- /**
62
- * @typedef {import('wootils/esm/shared/jimpleFns').Providers} Providers
63
- * @external Providers
64
- * @see https://homer0.github.io/wootils/module-shared_jimpleFns.html#.Providers
65
- */
66
-
67
- /**
68
- * @typedef {import('wootils/esm/shared/jimpleFns').ProviderCreator<O>} ProviderCreator<O>
69
- * @template O
70
- * @external ProviderCreator
71
- * @see https://homer0.github.io/wootils/module-shared_jimpleFns.html#~providerCreator
72
- */
73
-
74
- // ==============================================
75
- // Externals - Express/Server
76
- // ==============================================
77
-
78
- /**
79
- * @typedef {import('express').Express} Express
80
- * @external Express
81
- * @see https://expressjs.com/en/4x/api.html
82
- */
83
-
84
- /**
85
- * @typedef {import('http').Server} HTTPServer
86
- * @external HTTPServer
87
- * @see https://nodejs.org/docs/latest-v12.x/api/http.html#http_class_http_server
88
- */
89
-
90
- /**
91
- * @typedef {import('spdy').Server} SpdyServer
92
- * @external SpdyServer
93
- * @see https://github.com/spdy-http2/node-spdy
94
- */
95
- /**
96
- * @typedef {import('spdy').ServerOptions} SpdyOptions
97
- * @external SpdyOptions
98
- * @see https://github.com/spdy-http2/node-spdy#options
99
- */
100
-
101
- /**
102
- * @typedef {HTTPServer | SpdyServer} Server
103
- */
104
-
105
- /**
106
- * @typedef {import('express').RequestHandler} RequestHandler
107
- * @typedef {import('express').ErrorRequestHandler} ErrorRequestHandler
108
- */
109
-
110
- /**
111
- * @typedef {RequestHandler | ErrorRequestHandler} ExpressMiddleware
112
- * @external ExpressMiddleware
113
- * @see http://expressjs.com/en/guide/using-middleware.html
114
- */
115
-
116
- /**
117
- * @typedef {import('express').Request} ExpressRequest
118
- * @external ExpressRequest
119
- * @see https://expressjs.com/en/4x/api.html#req
120
- */
121
-
122
- /**
123
- * @typedef {import('express').Response} ExpressResponse
124
- * @external ExpressResponse
125
- * @see https://expressjs.com/en/4x/api.html#res
126
- */
127
- /**
128
- * @typedef {import('express').NextFunction} ExpressNext
129
- * @external ExpressNext
130
- * @see https://expressjs.com/en/guide/writing-middleware.html
131
- */
132
-
133
- /**
134
- * @typedef {import('express').Router} ExpressRouter
135
- * @external Router
136
- * @see https://expressjs.com/en/4x/api.html#router
137
- */
138
-
139
- // ==============================================
140
- // Jimpex - Global classes
141
- // ==============================================
142
-
143
- /* eslint-disable jsdoc/valid-types */
144
- /**
145
- * @typedef {import('./services/common/httpError')['HTTPError']} ClassHTTPError
146
- * @typedef {import('./services/common/appError')['AppError']} ClassAppError
147
- */
148
- /* eslint-enable jsdoc/valid-types */
149
-
150
- /**
151
- * @typedef {import('./app').Jimpex} Jimpex
152
- */
153
-
154
- // ==============================================
155
- // Jimpex
156
- // ==============================================
157
-
158
- /**
159
- * @callback JimpexStartCallback
160
- * @param {AppConfiguration} appConfiguration The service that handles the application
161
- * configuration.
162
- */
163
-
164
- /**
165
- * @typedef {Object} JimpexConfigurationOptions
166
- * @property {?Object} default The app default configuration.
167
- * Default `null`.
168
- * @property {string} name The name of the app, used for the
169
- * configuration files. Default `'app'`.
170
- * @property {string} path The path to the configuration files
171
- * directory,
172
- * relative to the project root
173
- * directory. Default `'config/'`.
174
- * @property {boolean} hasFolder Whether the configurations are inside
175
- * a sub directory or not. If `true`, a
176
- * configuration path would be
177
- * `config/[app-name]/[file]`.
178
- * Default `true`.
179
- * @property {string} environmentVariable The name of the environment variable
180
- * that will be used to set the active
181
- * configuration.
182
- * Default `'CONFIG'`.
183
- * @property {boolean} loadFromEnvironment Whether or not to check for the
184
- * environment variable and load a
185
- * configuration based on its value.
186
- * Default `true`.
187
- * @property {boolean} loadVersionFromConfiguration If `true`, the app `version` will be
188
- * taken from the loaded configuration,
189
- * otherwise, when a configuration is
190
- * loaded, the app will copy the version
191
- * it has into the configuration.
192
- * Default `true`.
193
- * @property {string} filenameFormat The name format the configuration
194
- * files have.
195
- * Default:
196
- *
197
- *
198
- * `[app-name].[configuration-name].config.js`.
199
- */
200
-
201
- /**
202
- * @typedef {Object} JimpexStaticsOptions
203
- * @property {boolean} enabled Whether or not to include the middleware for static files.
204
- * Default `true`.
205
- * @property {boolean} onHome If `true`, the path to the statics folder will be relative
206
- * to the project root directory, otherwise, it will be
207
- * relative to the directory where the app executable file is
208
- * located. Default `false`.
209
- * @property {string} route The name of both the route and the folder, relative to
210
- * whatever you defined with the `onHome` option. Default
211
- * `'static'`.
212
- * @property {string} folder By default, the folder will be the same as the `route`,
213
- * but you can use this option to define a relative path that
214
- * won't affect the route. Default `''`.
215
- */
216
-
217
- /**
218
- * @typedef {Object} JimpexExpressOptions
219
- * @property {boolean} trustProxy Whether or not to enable the `trust proxy`
220
- * option.
221
- * Default `true`.
222
- * @property {boolean} disableXPoweredBy Whether or not to remove the `x-powered-by`
223
- * header.
224
- * Default `true`.
225
- * @property {boolean} compression Whether or not to add the `compression`
226
- * middleware.
227
- * Default `true`.
228
- * @property {boolean} bodyParser Whether or not to add the `body-parser`
229
- * middleware.
230
- * Default `true`.
231
- * @property {boolean} multer Whether or not to add the `multer` middleware.
232
- * Default `true`.
233
- */
234
-
235
- /**
236
- * @typedef {Object} JimpexDefaultServicesOptions
237
- * @property {boolean} common Whether or not to register all the `common` service
238
- * providers.
239
- * Default `true`.
240
- * @property {boolean} http Whether or not to register all the `http` service
241
- * providers.
242
- * Default `true`.
243
- * @property {boolean} utils Whether or not to register all the `utils` service
244
- * providers.
245
- * Default `true`.
246
- */
247
-
248
- /**
249
- * @typedef {Object} JimpexOptions
250
- * @property {string} version
251
- * The app version. To be used on the configuration. Default `'0.0.0'`.
252
- * @property {string} filesizeLimit
253
- * The size limit for the requests payload. Default `'15MB'`.
254
- * @property {boolean} boot
255
- * Whether or not to automatically call the `boot` method after initialization.
256
- * Default `true`.
257
- * @property {boolean} proxy
258
- * Whether or not to enable the proxy mode, so all providers, controllers and middlewares
259
- * will receive a proxied reference of the container, in which they can set and get
260
- * resources using dot notation.
261
- * @property {JimpexConfigurationOptions} configuration
262
- * The options for the app configuration service.
263
- * @property {JimpexStaticsOptions} statics
264
- * The options for the app static `middleware`.
265
- * @property {JimpexExpressOptions} express
266
- * The options for the Express app.
267
- * @property {JimpexDefaultServicesOptions} defaultServices
268
- * To tell the app which services should be registered when instantiated.
269
- */
270
-
271
- // ==============================================
272
- // Jimpex - Custom wrappers
273
- // ==============================================
274
-
275
- /**
276
- * An object that when mounted on Jimpex will take care of handling a list of specific
277
- * routes. The method Jimpex uses to mount a controller is {@link Jimpex#mount}.
278
- *
279
- * @typedef {Object} Controller
280
- * @property {ControllerConnectFn} connect The function Jimpex calls when mounting the
281
- * controller.
282
- * @property {boolean} controller A flag set to `true` to identify the
283
- * resource as a routes controller.
284
- */
285
-
286
- /**
287
- * @callback ControllerProviderRegisterFn
288
- * @param {Jimpex} app The instance of the application container.
289
- * @param {string} route The route where the controller will be mounted.
290
- * @returns {Controller}
291
- */
292
-
293
- /**
294
- * This is a special kind of controller that not only registers routes but also adds
295
- * resources to the container, and to avoid doing it during the mount process, it
296
- * registers the resources first and then returns the actuall controller.
297
- *
298
- * @typedef {Object} ControllerProvider
299
- * @property {ControllerProviderRegisterFn} register The function Jimpex calls when
300
- * registering the provider and the one
301
- * that has to generate the controller.
302
- */
303
-
304
- /**
305
- * The function called by the application container in order to mount a routes controller.
306
- *
307
- * @callback ControllerConnectFn
308
- * @param {Jimpex} app The instance of the application container.
309
- * @param {string} route The route where the controller will be mounted.
310
- * @returns {Router} The controller router.
311
- */
312
-
313
- /**
314
- * A function called in order to generate a {@link Controller}. They usually have
315
- * different options that will be sent to the controller creation.
316
- *
317
- * @callback ControllerCreatorFn
318
- * @returns {ControllerConnectFn}
319
- */
320
-
321
- /**
322
- * A special kind of {@link Controller} that can be used with {@link Jimpex#mount} as a
323
- * regular controller, or it can be called as a function with custom parameters in order
324
- * to obtain a "configured {@link Controller}".
325
- *
326
- * @callback ControllerCreator
327
- * @param {Partial<O>} [options={}] The options to create the controller.
328
- * @returns {Controller | ControllerProvider}
329
- * @template O
330
- */
331
-
332
- /**
333
- * An object that when mounted on Jimpex add an {@link ExpressMiddleware} to the app. The
334
- * method Jimpex uses to mount a middleware is {@link Jimpex#use}.
335
- *
336
- * @typedef {Object} Middleware
337
- * @property {MiddlewareConnectFn} connect The function Jimpex calls when mounting the
338
- * middleware.
339
- * @property {boolean} middleware A flag set to `true` to identify the
340
- * resource as a middleware.
341
- */
342
-
343
- /**
344
- * The function called by the application container in order to use a middleware.
345
- *
346
- * @callback MiddlewareConnectFn
347
- * @param {Jimpex} app The instance of the application container.
348
- * @returns {?ExpressMiddleware} A middleware for Express to use. It can also return
349
- * `null` in case there's a reason for the middleware not to
350
- * be active.
351
- */
352
-
353
- /**
354
- * A function called in order to generate a {@link Middleware}. They usually have
355
- * different options that will be sent to the middleware creation.
356
- *
357
- * @callback MiddlewareCreatorFn
358
- * @returns {MiddlewareConnectFn}
359
- */
360
-
361
- /**
362
- * A special kind of {@link Middleware} that can be used with {@link Jimpex#use} as a
363
- * regular middleware, or it can be called as a function with custom parameters in order
364
- * to obtain a "configured {@link Middleware}".
365
- *
366
- * @callback MiddlewareCreator
367
- * @param {Partial<O>} [options={}] The options to create the controller.
368
- * @returns {Middleware}
369
- * @template O
370
- */
371
-
372
- /**
373
- * @typedef {Middleware | ExpressMiddleware} MiddlewareLike
374
- */
375
-
376
- // eslint-disable-next-line
377
- export {};
@@ -1,78 +0,0 @@
1
- /**
2
- * @module functions
3
- */
4
-
5
- /**
6
- * Removes any leading slash from a URL.
7
- *
8
- * @param {string} url The URL to format.
9
- * @returns {string}
10
- * @parent module:functions
11
- */
12
- const removeLeadingSlash = (url) => url.replace(/^\/+/, '');
13
- /**
14
- * Removes any trailing slash from a URL.
15
- *
16
- * @param {string} url The URL to format.
17
- * @returns {string}
18
- * @parent module:functions
19
- */
20
- const removeTrailingSlash = (url) => url.replace(/\/+$/, '');
21
- /**
22
- * Remove any leading and trailing slash from a URL.
23
- *
24
- * @param {string} url The URL to format.
25
- * @param {boolean} [leading=true] Whether or not to remove any leading slash.
26
- * @param {boolean} [trailing=true] Whether or not to remove the trailing slash.
27
- * @returns {string}
28
- * @parent module:functions
29
- */
30
- const removeSlashes = (url, leading = true, trailing = true) => {
31
- const newUrl = leading ? removeLeadingSlash(url) : url;
32
- return trailing ? removeTrailingSlash(newUrl) : newUrl;
33
- };
34
- /**
35
- * Escapes a string to be used on `new RegExp(...)`.
36
- *
37
- * @param {string} text The text to escape.
38
- * @returns {string}
39
- * @parent module:functions
40
- */
41
- const escapeForRegExp = (text) => text.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, '\\$&');
42
- /**
43
- * Given a server route definition, this function creates a regular expression to match
44
- * it: The expression replaces the routes parameters with placeholders so it can be
45
- * compared with real routes.
46
- *
47
- * @param {string} route The route from which the expression will be
48
- * created.
49
- * @param {boolean} [leadingSlash=true] Whether or not the expression should match a
50
- * leading slash.
51
- * @param {boolean} [trailingSlash=false] Whether or not the expression should match a
52
- * trailing slash. The reason this is `false` by
53
- * default is because these expressions are often
54
- * used to match against incoming requests, and
55
- * they don't have a trailing slash.
56
- * @returns {RegExp}
57
- * @parent module:functions
58
- */
59
- const createRouteExpression = (route, leadingSlash = true, trailingSlash = false) => {
60
- let expression = removeSlashes(route)
61
- .split('/')
62
- .map((part) => (part.startsWith(':') ? '(?:([^\\/]+?))' : escapeForRegExp(part)))
63
- .join('\\/');
64
- if (leadingSlash) {
65
- expression = `\\/${expression}`;
66
- }
67
- if (trailingSlash) {
68
- expression = `${expression}\\/`;
69
- }
70
-
71
- return new RegExp(expression);
72
- };
73
-
74
- module.exports.createRouteExpression = createRouteExpression;
75
- module.exports.escapeForRegExp = escapeForRegExp;
76
- module.exports.removeLeadingSlash = removeLeadingSlash;
77
- module.exports.removeSlashes = removeSlashes;
78
- module.exports.removeTrailingSlash = removeTrailingSlash;
@@ -1,131 +0,0 @@
1
- const {
2
- provider,
3
- providerCreator,
4
- providers,
5
- resource,
6
- resourceCreator,
7
- } = require('wootils/shared/jimpleFns');
8
-
9
- /**
10
- * @typedef {import('../types').Controller} Controller
11
- * @typedef {import('../types').Middleware} Middleware
12
- * @typedef {import('../types').ControllerConnectFn} ControllerConnectFn
13
- * @typedef {import('../types').ControllerCreatorFn} ControllerCreatorFn
14
- * @typedef {import('../types').MiddlewareConnectFn} MiddlewareConnectFn
15
- * @typedef {import('../types').MiddlewareCreatorFn} MiddlewareCreatorFn
16
- */
17
-
18
- /**
19
- * @typedef {import('../types').ControllerCreator<O>} ControllerCreator<O>
20
- * @template O
21
- */
22
-
23
- /**
24
- * @typedef {import('../types').MiddlewareCreator<O>} MiddlewareCreator<O>
25
- * @template O
26
- */
27
-
28
- /**
29
- * @module wrappers
30
- */
31
-
32
- /**
33
- * Generates a routes controller for the application container to mount.
34
- *
35
- * @example
36
- *
37
- * const myController = controller((app) => {
38
- * const router = app.get('router');
39
- * const ctrl = new MyController();
40
- * return router.get('...', ctrl.doSomething()).post('...', ctrl.doSomethingElse());
41
- * });
42
- *
43
- * @param {ControllerConnectFn} connectFn A function that will be called the moment the
44
- * app mounts the controller.
45
- * @returns {Controller}
46
- * @parent module:wrappers
47
- */
48
- const controller = (connectFn) => resource('controller', 'connect', connectFn);
49
- /**
50
- * Generates a configurable routes controller for the application to mount. It's
51
- * configurable because the creator, instead of just being sent to the container to mount,
52
- * it can also be called as a function with custom parameters the controller can receive.
53
- *
54
- * @example
55
- *
56
- * const myController = controllerCreator((options = {}) => (app) => {
57
- * const router = app.get('router');
58
- * const ctrl = new MyController(options);
59
- * return router.get('...', ctrl.doSomething()).post('...', ctrl.doSomethingElse());
60
- * });
61
- *
62
- * @param {ControllerCreatorFn} creatorFn The function that generates the controller.
63
- * @returns {ControllerCreator<any>}
64
- * @parent module:wrappers
65
- */
66
- const controllerCreator = (creatorFn) =>
67
- resourceCreator('controller', 'connect', creatorFn);
68
- /**
69
- * Generates a middleware for the app to use.
70
- *
71
- * @example
72
- *
73
- * const myMiddleware = middleware((app) => (req, res, next) => {
74
- * if (req.query.greet !== 'true') {
75
- * return next();
76
- * }
77
- *
78
- * app.get('responsesBuilder').json(res, {
79
- * hello: 'world',
80
- * });
81
- * });
82
- *
83
- * @example
84
- *
85
- * <caption>Disable the middleware base on a configuration option</caption>
86
- *
87
- * const myMiddleware = middleware((app) => {
88
- * if (app.get('appConfiguration').get('someOption') !== true) {
89
- * return null;
90
- * }
91
- *
92
- * return (req, res, next) => {
93
- * if (req.query.hello !== 'world') return next();
94
- * app.get('responsesBuilder').json(res, {
95
- * hello: 'world',
96
- * });
97
- * };
98
- * });
99
- *
100
- * @param {MiddlewareConnectFn} connectFn A function that will be called the moment the
101
- * app mounts the middleware.
102
- * @returns {Middleware}
103
- * @parent module:wrappers
104
- */
105
- const middleware = (connectFn) => resource('middleware', 'connect', connectFn);
106
- /**
107
- * Generates a configurable middleware for the app to use. It's configurable because the
108
- * creator,
109
- * instead of just being sent to the container to use, it can also be called as a function
110
- * with custom parameters the middleware can receive.
111
- *
112
- * @example
113
- *
114
- * const myMiddleware = middlewareCreator((options = {}) => (app) =>
115
- * options.enabled ? (req, res, next) => {} : null,
116
- * );
117
- *
118
- * @param {MiddlewareCreatorFn} creatorFn The function that generates the middleware.
119
- * @returns {MiddlewareCreator<any>}
120
- * @parent module:wrappers
121
- */
122
- const middlewareCreator = (creatorFn) =>
123
- resourceCreator('middleware', 'connect', creatorFn);
124
-
125
- module.exports.provider = provider;
126
- module.exports.providerCreator = providerCreator;
127
- module.exports.providers = providers;
128
- module.exports.controller = controller;
129
- module.exports.controllerCreator = controllerCreator;
130
- module.exports.middleware = middleware;
131
- module.exports.middlewareCreator = middlewareCreator;