@morojs/moro 1.6.0 → 1.6.1

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 (388) hide show
  1. package/README.md +256 -74
  2. package/dist/core/auth/morojs-adapter.js +20 -20
  3. package/dist/core/auth/morojs-adapter.js.map +1 -1
  4. package/dist/core/config/file-loader.d.ts +6 -1
  5. package/dist/core/config/file-loader.js +249 -19
  6. package/dist/core/config/file-loader.js.map +1 -1
  7. package/dist/core/config/index.d.ts +12 -41
  8. package/dist/core/config/index.js +54 -65
  9. package/dist/core/config/index.js.map +1 -1
  10. package/dist/core/config/loader.d.ts +7 -0
  11. package/dist/core/config/loader.js +269 -0
  12. package/dist/core/config/loader.js.map +1 -0
  13. package/dist/core/config/schema.d.ts +2 -2
  14. package/dist/core/config/schema.js +44 -52
  15. package/dist/core/config/schema.js.map +1 -1
  16. package/dist/core/config/utils.d.ts +3 -10
  17. package/dist/core/config/utils.js +58 -31
  18. package/dist/core/config/utils.js.map +1 -1
  19. package/dist/core/config/validation.d.ts +17 -0
  20. package/dist/core/config/validation.js +131 -0
  21. package/dist/core/config/validation.js.map +1 -0
  22. package/dist/core/database/adapters/drizzle.d.ts +1 -1
  23. package/dist/core/database/adapters/drizzle.js +11 -18
  24. package/dist/core/database/adapters/drizzle.js.map +1 -1
  25. package/dist/core/database/adapters/index.d.ts +7 -7
  26. package/dist/core/database/adapters/index.js +29 -19
  27. package/dist/core/database/adapters/index.js.map +1 -1
  28. package/dist/core/database/adapters/mongodb.d.ts +1 -13
  29. package/dist/core/database/adapters/mongodb.js +10 -46
  30. package/dist/core/database/adapters/mongodb.js.map +1 -1
  31. package/dist/core/database/adapters/mysql.d.ts +1 -14
  32. package/dist/core/database/adapters/mysql.js +9 -19
  33. package/dist/core/database/adapters/mysql.js.map +1 -1
  34. package/dist/core/database/adapters/postgresql.d.ts +2 -12
  35. package/dist/core/database/adapters/postgresql.js +9 -19
  36. package/dist/core/database/adapters/postgresql.js.map +1 -1
  37. package/dist/core/database/adapters/redis.d.ts +1 -12
  38. package/dist/core/database/adapters/redis.js +13 -48
  39. package/dist/core/database/adapters/redis.js.map +1 -1
  40. package/dist/core/database/adapters/sqlite.d.ts +1 -3
  41. package/dist/core/database/adapters/sqlite.js +8 -19
  42. package/dist/core/database/adapters/sqlite.js.map +1 -1
  43. package/dist/core/database/index.d.ts +2 -2
  44. package/dist/core/database/index.js +18 -2
  45. package/dist/core/database/index.js.map +1 -1
  46. package/dist/core/docs/index.d.ts +9 -9
  47. package/dist/core/docs/index.js +35 -14
  48. package/dist/core/docs/index.js.map +1 -1
  49. package/dist/core/docs/openapi-generator.d.ts +2 -2
  50. package/dist/core/docs/openapi-generator.js +16 -11
  51. package/dist/core/docs/openapi-generator.js.map +1 -1
  52. package/dist/core/docs/schema-to-openapi.d.ts +2 -2
  53. package/dist/core/docs/schema-to-openapi.js +11 -5
  54. package/dist/core/docs/schema-to-openapi.js.map +1 -1
  55. package/dist/core/docs/simple-docs.d.ts +1 -1
  56. package/dist/core/docs/simple-docs.js +9 -4
  57. package/dist/core/docs/simple-docs.js.map +1 -1
  58. package/dist/core/docs/swagger-ui.d.ts +2 -2
  59. package/dist/core/docs/swagger-ui.js +29 -26
  60. package/dist/core/docs/swagger-ui.js.map +1 -1
  61. package/dist/core/docs/zod-to-openapi.js +28 -31
  62. package/dist/core/docs/zod-to-openapi.js.map +1 -1
  63. package/dist/core/events/event-bus.d.ts +1 -1
  64. package/dist/core/events/event-bus.js +10 -6
  65. package/dist/core/events/event-bus.js.map +1 -1
  66. package/dist/core/events/index.d.ts +2 -2
  67. package/dist/core/events/index.js +5 -1
  68. package/dist/core/events/index.js.map +1 -1
  69. package/dist/core/framework.d.ts +12 -19
  70. package/dist/core/framework.js +100 -277
  71. package/dist/core/framework.js.map +1 -1
  72. package/dist/core/http/http-server.d.ts +1 -13
  73. package/dist/core/http/http-server.js +85 -175
  74. package/dist/core/http/http-server.js.map +1 -1
  75. package/dist/core/http/index.d.ts +3 -4
  76. package/dist/core/http/index.js +8 -3
  77. package/dist/core/http/index.js.map +1 -1
  78. package/dist/core/http/router.d.ts +1 -13
  79. package/dist/core/http/router.js +43 -117
  80. package/dist/core/http/router.js.map +1 -1
  81. package/dist/core/logger/filters.d.ts +1 -1
  82. package/dist/core/logger/filters.js +23 -20
  83. package/dist/core/logger/filters.js.map +1 -1
  84. package/dist/core/logger/index.d.ts +3 -3
  85. package/dist/core/logger/index.js +24 -2
  86. package/dist/core/logger/index.js.map +1 -1
  87. package/dist/core/logger/logger.d.ts +14 -30
  88. package/dist/core/logger/logger.js +223 -398
  89. package/dist/core/logger/logger.js.map +1 -1
  90. package/dist/core/logger/outputs.d.ts +1 -1
  91. package/dist/core/logger/outputs.js +17 -8
  92. package/dist/core/logger/outputs.js.map +1 -1
  93. package/dist/core/middleware/built-in/adapters/cache/file.d.ts +1 -1
  94. package/dist/core/middleware/built-in/adapters/cache/file.js +47 -10
  95. package/dist/core/middleware/built-in/adapters/cache/file.js.map +1 -1
  96. package/dist/core/middleware/built-in/adapters/cache/index.d.ts +4 -4
  97. package/dist/core/middleware/built-in/adapters/cache/index.js +17 -10
  98. package/dist/core/middleware/built-in/adapters/cache/index.js.map +1 -1
  99. package/dist/core/middleware/built-in/adapters/cache/memory.d.ts +1 -1
  100. package/dist/core/middleware/built-in/adapters/cache/memory.js +7 -3
  101. package/dist/core/middleware/built-in/adapters/cache/memory.js.map +1 -1
  102. package/dist/core/middleware/built-in/adapters/cache/redis.d.ts +1 -3
  103. package/dist/core/middleware/built-in/adapters/cache/redis.js +9 -11
  104. package/dist/core/middleware/built-in/adapters/cache/redis.js.map +1 -1
  105. package/dist/core/middleware/built-in/adapters/cdn/azure.d.ts +1 -1
  106. package/dist/core/middleware/built-in/adapters/cdn/azure.js +7 -3
  107. package/dist/core/middleware/built-in/adapters/cdn/azure.js.map +1 -1
  108. package/dist/core/middleware/built-in/adapters/cdn/cloudflare.d.ts +1 -1
  109. package/dist/core/middleware/built-in/adapters/cdn/cloudflare.js +7 -3
  110. package/dist/core/middleware/built-in/adapters/cdn/cloudflare.js.map +1 -1
  111. package/dist/core/middleware/built-in/adapters/cdn/cloudfront.d.ts +1 -3
  112. package/dist/core/middleware/built-in/adapters/cdn/cloudfront.js +10 -12
  113. package/dist/core/middleware/built-in/adapters/cdn/cloudfront.js.map +1 -1
  114. package/dist/core/middleware/built-in/adapters/cdn/index.d.ts +4 -4
  115. package/dist/core/middleware/built-in/adapters/cdn/index.js +17 -10
  116. package/dist/core/middleware/built-in/adapters/cdn/index.js.map +1 -1
  117. package/dist/core/middleware/built-in/adapters/index.d.ts +4 -4
  118. package/dist/core/middleware/built-in/adapters/index.js +23 -4
  119. package/dist/core/middleware/built-in/adapters/index.js.map +1 -1
  120. package/dist/core/middleware/built-in/auth-helpers.js +22 -11
  121. package/dist/core/middleware/built-in/auth-helpers.js.map +1 -1
  122. package/dist/core/middleware/built-in/auth-providers.d.ts +1 -1
  123. package/dist/core/middleware/built-in/auth-providers.js +9 -4
  124. package/dist/core/middleware/built-in/auth-providers.js.map +1 -1
  125. package/dist/core/middleware/built-in/auth.d.ts +2 -2
  126. package/dist/core/middleware/built-in/auth.js +26 -93
  127. package/dist/core/middleware/built-in/auth.js.map +1 -1
  128. package/dist/core/middleware/built-in/cache.d.ts +2 -2
  129. package/dist/core/middleware/built-in/cache.js +12 -11
  130. package/dist/core/middleware/built-in/cache.js.map +1 -1
  131. package/dist/core/middleware/built-in/cdn.d.ts +2 -2
  132. package/dist/core/middleware/built-in/cdn.js +9 -5
  133. package/dist/core/middleware/built-in/cdn.js.map +1 -1
  134. package/dist/core/middleware/built-in/cookie.d.ts +1 -1
  135. package/dist/core/middleware/built-in/cookie.js +7 -3
  136. package/dist/core/middleware/built-in/cookie.js.map +1 -1
  137. package/dist/core/middleware/built-in/cors.d.ts +1 -1
  138. package/dist/core/middleware/built-in/cors.js +7 -3
  139. package/dist/core/middleware/built-in/cors.js.map +1 -1
  140. package/dist/core/middleware/built-in/csp.d.ts +1 -1
  141. package/dist/core/middleware/built-in/csp.js +8 -5
  142. package/dist/core/middleware/built-in/csp.js.map +1 -1
  143. package/dist/core/middleware/built-in/csrf.d.ts +1 -1
  144. package/dist/core/middleware/built-in/csrf.js +8 -5
  145. package/dist/core/middleware/built-in/csrf.js.map +1 -1
  146. package/dist/core/middleware/built-in/error-tracker.js +7 -3
  147. package/dist/core/middleware/built-in/error-tracker.js.map +1 -1
  148. package/dist/core/middleware/built-in/index.d.ts +27 -28
  149. package/dist/core/middleware/built-in/index.js +78 -48
  150. package/dist/core/middleware/built-in/index.js.map +1 -1
  151. package/dist/core/middleware/built-in/performance-monitor.js +7 -3
  152. package/dist/core/middleware/built-in/performance-monitor.js.map +1 -1
  153. package/dist/core/middleware/built-in/rate-limit.d.ts +1 -1
  154. package/dist/core/middleware/built-in/rate-limit.js +7 -3
  155. package/dist/core/middleware/built-in/rate-limit.js.map +1 -1
  156. package/dist/core/middleware/built-in/request-logger.js +8 -5
  157. package/dist/core/middleware/built-in/request-logger.js.map +1 -1
  158. package/dist/core/middleware/built-in/session.d.ts +2 -2
  159. package/dist/core/middleware/built-in/session.js +15 -11
  160. package/dist/core/middleware/built-in/session.js.map +1 -1
  161. package/dist/core/middleware/built-in/sse.d.ts +1 -1
  162. package/dist/core/middleware/built-in/sse.js +14 -12
  163. package/dist/core/middleware/built-in/sse.js.map +1 -1
  164. package/dist/core/middleware/built-in/validation.d.ts +1 -1
  165. package/dist/core/middleware/built-in/validation.js +7 -3
  166. package/dist/core/middleware/built-in/validation.js.map +1 -1
  167. package/dist/core/middleware/index.d.ts +4 -4
  168. package/dist/core/middleware/index.js +28 -8
  169. package/dist/core/middleware/index.js.map +1 -1
  170. package/dist/core/modules/auto-discovery.d.ts +2 -19
  171. package/dist/core/modules/auto-discovery.js +74 -391
  172. package/dist/core/modules/auto-discovery.js.map +1 -1
  173. package/dist/core/modules/index.d.ts +2 -2
  174. package/dist/core/modules/index.js +9 -2
  175. package/dist/core/modules/index.js.map +1 -1
  176. package/dist/core/modules/modules.d.ts +3 -3
  177. package/dist/core/modules/modules.js +54 -23
  178. package/dist/core/modules/modules.js.map +1 -1
  179. package/dist/core/networking/adapters/index.d.ts +3 -4
  180. package/dist/core/networking/adapters/index.js +7 -3
  181. package/dist/core/networking/adapters/index.js.map +1 -1
  182. package/dist/core/networking/adapters/socketio-adapter.d.ts +1 -1
  183. package/dist/core/networking/adapters/socketio-adapter.js +40 -5
  184. package/dist/core/networking/adapters/socketio-adapter.js.map +1 -1
  185. package/dist/core/networking/adapters/ws-adapter.d.ts +2 -2
  186. package/dist/core/networking/adapters/ws-adapter.js +43 -8
  187. package/dist/core/networking/adapters/ws-adapter.js.map +1 -1
  188. package/dist/core/networking/index.d.ts +2 -3
  189. package/dist/core/networking/index.js +7 -2
  190. package/dist/core/networking/index.js.map +1 -1
  191. package/dist/core/networking/service-discovery.js +12 -8
  192. package/dist/core/networking/service-discovery.js.map +1 -1
  193. package/dist/core/networking/websocket-adapter.js +2 -1
  194. package/dist/core/networking/websocket-adapter.js.map +1 -1
  195. package/dist/core/networking/websocket-manager.d.ts +3 -3
  196. package/dist/core/networking/websocket-manager.js +11 -9
  197. package/dist/core/networking/websocket-manager.js.map +1 -1
  198. package/dist/core/routing/app-integration.d.ts +2 -2
  199. package/dist/core/routing/app-integration.js +12 -7
  200. package/dist/core/routing/app-integration.js.map +1 -1
  201. package/dist/core/routing/index.d.ts +2 -22
  202. package/dist/core/routing/index.js +27 -185
  203. package/dist/core/routing/index.js.map +1 -1
  204. package/dist/core/runtime/aws-lambda-adapter.d.ts +3 -3
  205. package/dist/core/runtime/aws-lambda-adapter.js +6 -2
  206. package/dist/core/runtime/aws-lambda-adapter.js.map +1 -1
  207. package/dist/core/runtime/base-adapter.d.ts +2 -2
  208. package/dist/core/runtime/base-adapter.js +7 -3
  209. package/dist/core/runtime/base-adapter.js.map +1 -1
  210. package/dist/core/runtime/cloudflare-workers-adapter.d.ts +3 -3
  211. package/dist/core/runtime/cloudflare-workers-adapter.js +6 -2
  212. package/dist/core/runtime/cloudflare-workers-adapter.js.map +1 -1
  213. package/dist/core/runtime/index.d.ts +12 -12
  214. package/dist/core/runtime/index.js +35 -22
  215. package/dist/core/runtime/index.js.map +1 -1
  216. package/dist/core/runtime/node-adapter.d.ts +4 -4
  217. package/dist/core/runtime/node-adapter.js +49 -18
  218. package/dist/core/runtime/node-adapter.js.map +1 -1
  219. package/dist/core/runtime/vercel-edge-adapter.d.ts +3 -3
  220. package/dist/core/runtime/vercel-edge-adapter.js +6 -2
  221. package/dist/core/runtime/vercel-edge-adapter.js.map +1 -1
  222. package/dist/core/utilities/circuit-breaker.js +5 -1
  223. package/dist/core/utilities/circuit-breaker.js.map +1 -1
  224. package/dist/core/utilities/container.js +22 -12
  225. package/dist/core/utilities/container.js.map +1 -1
  226. package/dist/core/utilities/hooks.d.ts +2 -2
  227. package/dist/core/utilities/hooks.js +12 -7
  228. package/dist/core/utilities/hooks.js.map +1 -1
  229. package/dist/core/utilities/index.d.ts +4 -5
  230. package/dist/core/utilities/index.js +19 -5
  231. package/dist/core/utilities/index.js.map +1 -1
  232. package/dist/core/validation/adapters.d.ts +1 -1
  233. package/dist/core/validation/adapters.js +26 -15
  234. package/dist/core/validation/adapters.js.map +1 -1
  235. package/dist/core/validation/index.d.ts +4 -6
  236. package/dist/core/validation/index.js +28 -57
  237. package/dist/core/validation/index.js.map +1 -1
  238. package/dist/core/validation/schema-interface.js +9 -3
  239. package/dist/core/validation/schema-interface.js.map +1 -1
  240. package/dist/index.d.ts +52 -51
  241. package/dist/index.js +132 -23
  242. package/dist/index.js.map +1 -1
  243. package/dist/moro.d.ts +10 -61
  244. package/dist/moro.js +237 -575
  245. package/dist/moro.js.map +1 -1
  246. package/dist/types/auth.js +9 -3
  247. package/dist/types/auth.js.map +1 -1
  248. package/dist/types/cache.js +2 -1
  249. package/dist/types/cdn.js +2 -1
  250. package/dist/types/config.d.ts +2 -70
  251. package/dist/types/config.js +2 -1
  252. package/dist/types/config.js.map +1 -1
  253. package/dist/types/core.d.ts +42 -36
  254. package/dist/types/core.js +2 -1
  255. package/dist/types/database.js +2 -1
  256. package/dist/types/discovery.js +2 -1
  257. package/dist/types/events.js +2 -1
  258. package/dist/types/hooks.d.ts +1 -1
  259. package/dist/types/hooks.js +2 -1
  260. package/dist/types/http.d.ts +1 -16
  261. package/dist/types/http.js +2 -1
  262. package/dist/types/logger.d.ts +0 -7
  263. package/dist/types/logger.js +2 -1
  264. package/dist/types/module.d.ts +0 -11
  265. package/dist/types/module.js +2 -1
  266. package/dist/types/runtime.d.ts +1 -1
  267. package/dist/types/runtime.js +2 -1
  268. package/dist/types/session.js +2 -1
  269. package/package.json +52 -19
  270. package/src/core/auth/morojs-adapter.ts +13 -18
  271. package/src/core/config/file-loader.ts +273 -13
  272. package/src/core/config/index.ts +34 -83
  273. package/src/core/config/loader.ts +633 -0
  274. package/src/core/config/schema.ts +33 -44
  275. package/src/core/config/utils.ts +31 -24
  276. package/src/core/config/validation.ts +140 -0
  277. package/src/core/database/README.md +16 -26
  278. package/src/core/database/adapters/drizzle.ts +6 -18
  279. package/src/core/database/adapters/index.ts +13 -13
  280. package/src/core/database/adapters/mongodb.ts +5 -53
  281. package/src/core/database/adapters/mysql.ts +4 -32
  282. package/src/core/database/adapters/postgresql.ts +5 -30
  283. package/src/core/database/adapters/redis.ts +8 -61
  284. package/src/core/database/adapters/sqlite.ts +3 -19
  285. package/src/core/database/index.ts +2 -2
  286. package/src/core/docs/index.ts +8 -8
  287. package/src/core/docs/openapi-generator.ts +4 -4
  288. package/src/core/docs/schema-to-openapi.ts +6 -3
  289. package/src/core/docs/simple-docs.ts +2 -2
  290. package/src/core/docs/swagger-ui.ts +16 -19
  291. package/src/core/docs/zod-to-openapi.ts +34 -34
  292. package/src/core/events/event-bus.ts +2 -2
  293. package/src/core/events/index.ts +2 -2
  294. package/src/core/framework.ts +67 -311
  295. package/src/core/http/http-server.ts +45 -190
  296. package/src/core/http/index.ts +3 -4
  297. package/src/core/http/router.ts +40 -129
  298. package/src/core/logger/filters.ts +5 -13
  299. package/src/core/logger/index.ts +3 -4
  300. package/src/core/logger/logger.ts +216 -435
  301. package/src/core/logger/outputs.ts +3 -1
  302. package/src/core/middleware/built-in/adapters/cache/file.ts +3 -3
  303. package/src/core/middleware/built-in/adapters/cache/index.ts +7 -7
  304. package/src/core/middleware/built-in/adapters/cache/memory.ts +2 -2
  305. package/src/core/middleware/built-in/adapters/cache/redis.ts +4 -18
  306. package/src/core/middleware/built-in/adapters/cdn/azure.ts +2 -2
  307. package/src/core/middleware/built-in/adapters/cdn/cloudflare.ts +2 -2
  308. package/src/core/middleware/built-in/adapters/cdn/cloudfront.ts +5 -16
  309. package/src/core/middleware/built-in/adapters/cdn/index.ts +7 -7
  310. package/src/core/middleware/built-in/adapters/index.ts +4 -4
  311. package/src/core/middleware/built-in/auth-helpers.ts +1 -1
  312. package/src/core/middleware/built-in/auth-providers.ts +1 -1
  313. package/src/core/middleware/built-in/auth.ts +21 -102
  314. package/src/core/middleware/built-in/cache.ts +6 -8
  315. package/src/core/middleware/built-in/cdn.ts +4 -4
  316. package/src/core/middleware/built-in/cookie.ts +2 -2
  317. package/src/core/middleware/built-in/cors.ts +2 -2
  318. package/src/core/middleware/built-in/csp.ts +3 -3
  319. package/src/core/middleware/built-in/csrf.ts +3 -3
  320. package/src/core/middleware/built-in/error-tracker.ts +1 -1
  321. package/src/core/middleware/built-in/index.ts +30 -38
  322. package/src/core/middleware/built-in/performance-monitor.ts +1 -1
  323. package/src/core/middleware/built-in/rate-limit.ts +2 -2
  324. package/src/core/middleware/built-in/request-logger.ts +1 -3
  325. package/src/core/middleware/built-in/session.ts +8 -7
  326. package/src/core/middleware/built-in/sse.ts +9 -11
  327. package/src/core/middleware/built-in/validation.ts +2 -2
  328. package/src/core/middleware/index.ts +6 -6
  329. package/src/core/modules/auto-discovery.ts +15 -478
  330. package/src/core/modules/index.ts +2 -2
  331. package/src/core/modules/modules.ts +12 -23
  332. package/src/core/networking/adapters/index.ts +3 -4
  333. package/src/core/networking/adapters/socketio-adapter.ts +3 -5
  334. package/src/core/networking/adapters/ws-adapter.ts +9 -8
  335. package/src/core/networking/index.ts +2 -3
  336. package/src/core/networking/service-discovery.ts +7 -6
  337. package/src/core/networking/websocket-manager.ts +7 -7
  338. package/src/core/routing/app-integration.ts +3 -3
  339. package/src/core/routing/index.ts +17 -201
  340. package/src/core/runtime/aws-lambda-adapter.ts +3 -3
  341. package/src/core/runtime/base-adapter.ts +2 -2
  342. package/src/core/runtime/cloudflare-workers-adapter.ts +3 -3
  343. package/src/core/runtime/index.ts +13 -13
  344. package/src/core/runtime/node-adapter.ts +10 -16
  345. package/src/core/runtime/vercel-edge-adapter.ts +3 -3
  346. package/src/core/utilities/hooks.ts +3 -3
  347. package/src/core/utilities/index.ts +4 -5
  348. package/src/core/validation/adapters.ts +1 -1
  349. package/src/core/validation/index.ts +16 -68
  350. package/src/index.ts +66 -73
  351. package/src/moro.ts +204 -685
  352. package/src/types/config.ts +2 -71
  353. package/src/types/core.ts +47 -49
  354. package/src/types/hooks.ts +1 -1
  355. package/src/types/http.ts +1 -23
  356. package/src/types/logger.ts +0 -9
  357. package/src/types/module.ts +0 -12
  358. package/src/types/runtime.ts +1 -1
  359. package/tsconfig.json +2 -4
  360. package/dist/core/config/config-manager.d.ts +0 -44
  361. package/dist/core/config/config-manager.js +0 -104
  362. package/dist/core/config/config-manager.js.map +0 -1
  363. package/dist/core/config/config-sources.d.ts +0 -21
  364. package/dist/core/config/config-sources.js +0 -499
  365. package/dist/core/config/config-sources.js.map +0 -1
  366. package/dist/core/config/config-validator.d.ts +0 -21
  367. package/dist/core/config/config-validator.js +0 -788
  368. package/dist/core/config/config-validator.js.map +0 -1
  369. package/dist/core/http/uws-http-server.d.ts +0 -64
  370. package/dist/core/http/uws-http-server.js +0 -688
  371. package/dist/core/http/uws-http-server.js.map +0 -1
  372. package/dist/core/middleware/built-in/jwt-helpers.d.ts +0 -118
  373. package/dist/core/middleware/built-in/jwt-helpers.js +0 -218
  374. package/dist/core/middleware/built-in/jwt-helpers.js.map +0 -1
  375. package/dist/core/networking/adapters/uws-adapter.d.ts +0 -44
  376. package/dist/core/networking/adapters/uws-adapter.js +0 -513
  377. package/dist/core/networking/adapters/uws-adapter.js.map +0 -1
  378. package/dist/core/utilities/package-utils.d.ts +0 -38
  379. package/dist/core/utilities/package-utils.js +0 -57
  380. package/dist/core/utilities/package-utils.js.map +0 -1
  381. package/jest.config.mjs +0 -41
  382. package/src/core/config/config-manager.ts +0 -133
  383. package/src/core/config/config-sources.ts +0 -596
  384. package/src/core/config/config-validator.ts +0 -1113
  385. package/src/core/http/uws-http-server.ts +0 -794
  386. package/src/core/middleware/built-in/jwt-helpers.ts +0 -243
  387. package/src/core/networking/adapters/uws-adapter.ts +0 -619
  388. package/src/core/utilities/package-utils.ts +0 -59
@@ -3,21 +3,9 @@
3
3
  export interface ServerConfig {
4
4
  port: number;
5
5
  host: string;
6
+ environment: 'development' | 'staging' | 'production';
6
7
  maxConnections: number;
7
8
  timeout: number;
8
- bodySizeLimit: string;
9
- requestTracking: {
10
- enabled: boolean;
11
- };
12
- errorBoundary: {
13
- enabled: boolean;
14
- };
15
- useUWebSockets?: boolean; // Enable uWebSockets for both HTTP and WebSocket
16
- ssl?: {
17
- key_file_name?: string;
18
- cert_file_name?: string;
19
- passphrase?: string;
20
- };
21
9
  }
22
10
 
23
11
  export interface ServiceDiscoveryConfig {
@@ -31,7 +19,7 @@ export interface ServiceDiscoveryConfig {
31
19
 
32
20
  export interface DatabaseConfig {
33
21
  url?: string;
34
- redis?: {
22
+ redis: {
35
23
  url: string;
36
24
  maxRetries: number;
37
25
  retryDelay: number;
@@ -47,28 +35,6 @@ export interface DatabaseConfig {
47
35
  acquireTimeout: number;
48
36
  timeout: number;
49
37
  };
50
- postgresql?: {
51
- host: string;
52
- port: number;
53
- database?: string;
54
- user?: string;
55
- password?: string;
56
- connectionLimit: number;
57
- ssl?: boolean;
58
- };
59
- sqlite?: {
60
- filename: string;
61
- memory?: boolean;
62
- verbose?: boolean;
63
- };
64
- mongodb?: {
65
- url?: string;
66
- host?: string;
67
- port?: number;
68
- database?: string;
69
- username?: string;
70
- password?: string;
71
- };
72
38
  }
73
39
 
74
40
  export interface ModuleDefaultsConfig {
@@ -90,18 +56,6 @@ export interface ModuleDefaultsConfig {
90
56
  stripUnknown: boolean;
91
57
  abortEarly: boolean;
92
58
  };
93
- autoDiscovery: {
94
- enabled: boolean;
95
- paths: string[];
96
- patterns: string[];
97
- recursive: boolean;
98
- loadingStrategy: 'eager' | 'lazy' | 'conditional';
99
- watchForChanges: boolean;
100
- ignorePatterns: string[];
101
- loadOrder: 'alphabetical' | 'dependency' | 'custom';
102
- failOnError: boolean;
103
- maxDepth: number;
104
- };
105
59
  }
106
60
 
107
61
  export interface LoggingConfig {
@@ -187,28 +141,6 @@ export interface PerformanceConfig {
187
141
  clustering: {
188
142
  enabled: boolean;
189
143
  workers: number | 'auto';
190
- memoryPerWorkerGB?: number;
191
- };
192
- }
193
-
194
- export interface WebSocketConfig {
195
- enabled: boolean;
196
- adapter?: string | 'socket.io' | 'ws' | 'uws';
197
- compression?: boolean;
198
- customIdGenerator?: () => string;
199
- options?: {
200
- cors?: {
201
- origin?: string | string[];
202
- credentials?: boolean;
203
- };
204
- path?: string;
205
- maxPayloadLength?: number;
206
- idleTimeout?: number;
207
- ssl?: {
208
- key_file_name?: string;
209
- cert_file_name?: string;
210
- passphrase?: string;
211
- };
212
144
  };
213
145
  }
214
146
 
@@ -222,5 +154,4 @@ export interface AppConfig {
222
154
  security: SecurityConfig;
223
155
  external: ExternalServicesConfig;
224
156
  performance: PerformanceConfig;
225
- websocket: WebSocketConfig;
226
157
  }
package/src/types/core.ts CHANGED
@@ -1,58 +1,56 @@
1
1
  // Core Framework Types
2
- import { RuntimeConfig } from './runtime.js';
3
- import { LogLevel, LoggerOptions } from './logger.js';
4
- import { AppConfig } from './config.js';
2
+ import { RuntimeConfig } from './runtime';
3
+ import { LogLevel, LoggerOptions } from './logger';
5
4
 
6
5
  export interface MoroOptions {
7
- autoDiscover?:
8
- | boolean
9
- | {
10
- enabled?: boolean;
11
- paths?: string[];
12
- patterns?: string[];
13
- recursive?: boolean;
14
- loadingStrategy?: 'eager' | 'lazy' | 'conditional';
15
- watchForChanges?: boolean;
16
- ignorePatterns?: string[];
17
- loadOrder?: 'alphabetical' | 'dependency' | 'custom';
18
- failOnError?: boolean;
19
- maxDepth?: number;
20
- };
21
- modulesPath?: string; // Deprecated: use autoDiscover.paths instead
6
+ autoDiscover?: boolean;
7
+ modulesPath?: string;
22
8
  middleware?: any[];
23
-
24
- // Runtime configuration
25
- runtime?: RuntimeConfig;
26
-
27
- // HTTP/WebSocket options
28
- http2?: boolean;
29
- https?: {
30
- key: string | Buffer;
31
- cert: string | Buffer;
32
- ca?: string | Buffer;
33
- };
34
- websocket?:
35
- | {
36
- enabled?: boolean;
37
- adapter?: any;
38
- compression?: boolean;
39
- customIdGenerator?: () => string;
40
- options?: any;
41
- }
42
- | false;
43
-
44
- // Simplified config options (these map to the full config)
9
+ database?: any;
45
10
  cors?: boolean | object;
46
11
  compression?: boolean | object;
47
12
  helmet?: boolean | object;
13
+ // Runtime configuration
14
+ runtime?: RuntimeConfig;
15
+ // Logger configuration
48
16
  logger?: LoggerOptions | boolean;
49
-
50
- // Direct config overrides (partial)
51
- server?: Partial<AppConfig['server']>;
52
- database?: Partial<AppConfig['database']>;
53
- modules?: Partial<AppConfig['modules']>;
54
- logging?: Partial<AppConfig['logging']>;
55
- security?: Partial<AppConfig['security']>;
56
- external?: Partial<AppConfig['external']>;
57
- performance?: Partial<AppConfig['performance']>;
17
+ // Module configuration
18
+ modules?: {
19
+ cache?: {
20
+ enabled?: boolean;
21
+ defaultTtl?: number;
22
+ maxSize?: number;
23
+ strategy?: 'lru' | 'lfu' | 'fifo';
24
+ };
25
+ rateLimit?: {
26
+ enabled?: boolean;
27
+ defaultRequests?: number;
28
+ defaultWindow?: number;
29
+ skipSuccessfulRequests?: boolean;
30
+ skipFailedRequests?: boolean;
31
+ };
32
+ validation?: {
33
+ enabled?: boolean;
34
+ stripUnknown?: boolean;
35
+ abortEarly?: boolean;
36
+ };
37
+ };
38
+ // Performance configuration
39
+ performance?: {
40
+ clustering?: {
41
+ enabled?: boolean;
42
+ workers?: number | 'auto';
43
+ };
44
+ compression?: {
45
+ enabled?: boolean;
46
+ level?: number;
47
+ threshold?: number;
48
+ };
49
+ circuitBreaker?: {
50
+ enabled?: boolean;
51
+ failureThreshold?: number;
52
+ resetTimeout?: number;
53
+ monitoringPeriod?: number;
54
+ };
55
+ };
58
56
  }
@@ -1,5 +1,5 @@
1
1
  // Hooks and Middleware Types
2
- import { HttpRequest, HttpResponse } from '../core/http/index.js';
2
+ import { HttpRequest, HttpResponse } from './http';
3
3
 
4
4
  export type HookFunction = (...args: any[]) => Promise<any> | any;
5
5
 
package/src/types/http.ts CHANGED
@@ -22,20 +22,9 @@ export interface CookieOptions {
22
22
  sameSite?: 'strict' | 'lax' | 'none';
23
23
  domain?: string;
24
24
  path?: string;
25
- // Security options
26
- critical?: boolean; // Mark as critical for security (throws on late set)
27
- throwOnLateSet?: boolean; // Force throw if headers already sent
28
25
  }
29
26
 
30
- export interface ResponseState {
31
- headersSent: boolean;
32
- statusCode: number;
33
- headers: Record<string, any>;
34
- finished: boolean;
35
- writable: boolean;
36
- }
37
-
38
- export interface MoroResponseMethods {
27
+ export interface HttpResponse extends ServerResponse {
39
28
  json(data: any): void;
40
29
  status(code: number): HttpResponse;
41
30
  send(data: string | Buffer): void;
@@ -44,19 +33,8 @@ export interface MoroResponseMethods {
44
33
  redirect(url: string, status?: number): void;
45
34
  sendFile(filePath: string): Promise<void>;
46
35
  render?(template: string, data?: any): Promise<void>;
47
-
48
- // Header management utilities
49
- hasHeader(name: string): boolean;
50
- setBulkHeaders(headers: Record<string, string | number>): HttpResponse;
51
- appendHeader(name: string, value: string | string[]): HttpResponse;
52
-
53
- // Response state utilities
54
- canSetHeaders(): boolean;
55
- getResponseState(): ResponseState;
56
36
  }
57
37
 
58
- export type HttpResponse = ServerResponse & MoroResponseMethods;
59
-
60
38
  export type HttpHandler = (req: HttpRequest, res: HttpResponse) => Promise<void> | void;
61
39
  export type Middleware = (
62
40
  req: HttpRequest,
@@ -30,7 +30,6 @@ export interface LoggerOptions {
30
30
  outputs?: LogOutput[];
31
31
  filters?: LogFilter[];
32
32
  maxEntries?: number;
33
- maxBufferSize?: number;
34
33
  }
35
34
 
36
35
  export interface LogOutput {
@@ -61,17 +60,11 @@ export interface Logger {
61
60
 
62
61
  // Configuration
63
62
  setLevel(level: LogLevel): void;
64
- getLevel(): LogLevel;
65
63
  addOutput(output: LogOutput): void;
66
64
  removeOutput(name: string): void;
67
65
  addFilter(filter: LogFilter): void;
68
66
  removeFilter(name: string): void;
69
67
 
70
- // Cleanup
71
- flush(): void;
72
- flushBuffer(): void;
73
- destroy(): void;
74
-
75
68
  // Metrics and history
76
69
  getHistory(count?: number): LogEntry[];
77
70
  getMetrics(): LogMetrics;
@@ -85,7 +78,6 @@ export interface LogMetrics {
85
78
  averageLogRate: number;
86
79
  errorRate: number;
87
80
  memoryUsage: number;
88
- outputErrors?: Record<string, number>;
89
81
  }
90
82
 
91
83
  export interface ColorScheme {
@@ -98,5 +90,4 @@ export interface ColorScheme {
98
90
  context: string;
99
91
  metadata: string;
100
92
  performance: string;
101
- reset: string;
102
93
  }
@@ -7,11 +7,6 @@ export interface ModuleRoute {
7
7
  cache?: { ttl: number; key?: string };
8
8
  rateLimit?: { requests: number; window: number };
9
9
  middleware?: string[];
10
- auth?: {
11
- roles?: string[];
12
- permissions?: string[];
13
- optional?: boolean;
14
- };
15
10
  }
16
11
 
17
12
  export interface ModuleSocket {
@@ -62,13 +57,6 @@ export interface InternalRouteDefinition {
62
57
  validation?: any;
63
58
  cache?: CacheConfig;
64
59
  rateLimit?: RateLimitConfig;
65
- auth?: {
66
- roles?: string[];
67
- permissions?: string[];
68
- optional?: boolean;
69
- };
70
- // Allow additional properties for extensibility
71
- [key: string]: any;
72
60
  }
73
61
 
74
62
  export interface WebSocketDefinition {
@@ -1,5 +1,5 @@
1
1
  // Runtime abstraction types for multi-environment support
2
- import { HttpRequest, HttpResponse } from '../core/http/index.js';
2
+ import { HttpRequest, HttpResponse } from './http';
3
3
 
4
4
  export type RuntimeType = 'node' | 'vercel-edge' | 'aws-lambda' | 'cloudflare-workers';
5
5
 
package/tsconfig.json CHANGED
@@ -2,8 +2,7 @@
2
2
  {
3
3
  "compilerOptions": {
4
4
  "target": "ES2022",
5
- "module": "NodeNext",
6
- "moduleResolution": "NodeNext",
5
+ "module": "commonjs",
7
6
  "lib": ["ES2022"],
8
7
  "outDir": "./dist",
9
8
  "rootDir": "./src",
@@ -15,8 +14,7 @@
15
14
  "emitDecoratorMetadata": true,
16
15
  "resolveJsonModule": true,
17
16
  "declaration": true,
18
- "sourceMap": true,
19
- "isolatedModules": true
17
+ "sourceMap": true
20
18
  },
21
19
  "include": ["src/**/*"],
22
20
  "exclude": ["node_modules", "dist"]
@@ -1,44 +0,0 @@
1
- /**
2
- * Configuration Manager - Immutable Single Source of Truth
3
- *
4
- * This module provides centralized, immutable configuration state management.
5
- * Configuration is locked at createApp() initialization and cannot be changed afterward.
6
- *
7
- * Precedence: Environment Variables > createApp Options > Config File > Defaults
8
- */
9
- import { AppConfig } from '../../types/config.js';
10
- /**
11
- * Initialize and lock global configuration state
12
- * This should only be called once during createApp() initialization
13
- */
14
- export declare function initializeAndLockConfig(config: AppConfig): void;
15
- /**
16
- * Get the current global configuration
17
- * Throws if configuration hasn't been initialized
18
- */
19
- export declare function getGlobalConfig(): Readonly<AppConfig>;
20
- /**
21
- * Check if configuration has been initialized and locked
22
- */
23
- export declare function isConfigLocked(): boolean;
24
- /**
25
- * Reset configuration state (for testing only)
26
- * @internal - This should only be used in tests
27
- */
28
- export declare function resetConfigForTesting(): void;
29
- /**
30
- * Get a specific configuration value using dot notation
31
- * This provides a safe way to access nested config values
32
- *
33
- * @example
34
- * getConfigValue('server.port') // Returns the server port
35
- * getConfigValue('database.redis.url') // Returns the Redis URL
36
- */
37
- export declare function getConfigValue<T = any>(path: string): T | undefined;
38
- /**
39
- * Utility functions for common environment checks
40
- * These now read NODE_ENV directly for consistency with Node.js ecosystem
41
- */
42
- export declare function isDevelopment(): boolean;
43
- export declare function isProduction(): boolean;
44
- export declare function isStaging(): boolean;
@@ -1,104 +0,0 @@
1
- /**
2
- * Configuration Manager - Immutable Single Source of Truth
3
- *
4
- * This module provides centralized, immutable configuration state management.
5
- * Configuration is locked at createApp() initialization and cannot be changed afterward.
6
- *
7
- * Precedence: Environment Variables > createApp Options > Config File > Defaults
8
- */
9
- import { createFrameworkLogger } from '../logger/index.js';
10
- const logger = createFrameworkLogger('ConfigManager');
11
- /**
12
- * Global configuration state - immutable after initialization
13
- */
14
- let globalConfig = null;
15
- let isLocked = false;
16
- /**
17
- * Initialize and lock global configuration state
18
- * This should only be called once during createApp() initialization
19
- */
20
- export function initializeAndLockConfig(config) {
21
- if (isLocked) {
22
- throw new Error('Configuration is already locked and cannot be changed. ' +
23
- 'Configuration can only be set once during createApp() initialization.');
24
- }
25
- // Deep freeze the configuration to make it truly immutable
26
- globalConfig = deepFreeze(config);
27
- isLocked = true;
28
- logger.info(`Configuration locked and initialized: ${process.env.NODE_ENV || 'development'}:${config.server.port}`);
29
- }
30
- /**
31
- * Get the current global configuration
32
- * Throws if configuration hasn't been initialized
33
- */
34
- export function getGlobalConfig() {
35
- if (!globalConfig || !isLocked) {
36
- throw new Error('Configuration not initialized. Call createApp() to initialize the configuration system.');
37
- }
38
- return globalConfig;
39
- }
40
- /**
41
- * Check if configuration has been initialized and locked
42
- */
43
- export function isConfigLocked() {
44
- return isLocked && globalConfig !== null;
45
- }
46
- /**
47
- * Reset configuration state (for testing only)
48
- * @internal - This should only be used in tests
49
- */
50
- export function resetConfigForTesting() {
51
- if (process.env.NODE_ENV !== 'test' &&
52
- !process.env.MORO_ALLOW_CONFIG_RESET &&
53
- !process.env.JEST_WORKER_ID) {
54
- throw new Error('Configuration reset is only allowed in test environments. ' +
55
- 'Set MORO_ALLOW_CONFIG_RESET=true to override this check.');
56
- }
57
- globalConfig = null;
58
- isLocked = false;
59
- logger.debug('Configuration state reset for testing');
60
- }
61
- /**
62
- * Deep freeze an object to make it truly immutable
63
- * This prevents any accidental mutations to the configuration
64
- */
65
- function deepFreeze(obj) {
66
- // Get property names
67
- const propNames = Object.getOwnPropertyNames(obj);
68
- // Freeze properties before freezing self
69
- for (const name of propNames) {
70
- const value = obj[name];
71
- if (value && typeof value === 'object') {
72
- deepFreeze(value);
73
- }
74
- }
75
- return Object.freeze(obj);
76
- }
77
- /**
78
- * Get a specific configuration value using dot notation
79
- * This provides a safe way to access nested config values
80
- *
81
- * @example
82
- * getConfigValue('server.port') // Returns the server port
83
- * getConfigValue('database.redis.url') // Returns the Redis URL
84
- */
85
- export function getConfigValue(path) {
86
- const config = getGlobalConfig();
87
- return path.split('.').reduce((obj, key) => {
88
- return obj && obj[key] !== undefined ? obj[key] : undefined;
89
- }, config);
90
- }
91
- /**
92
- * Utility functions for common environment checks
93
- * These now read NODE_ENV directly for consistency with Node.js ecosystem
94
- */
95
- export function isDevelopment() {
96
- return process.env.NODE_ENV === 'development';
97
- }
98
- export function isProduction() {
99
- return process.env.NODE_ENV === 'production';
100
- }
101
- export function isStaging() {
102
- return process.env.NODE_ENV === 'staging';
103
- }
104
- //# sourceMappingURL=config-manager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"config-manager.js","sourceRoot":"","sources":["../../../src/core/config/config-manager.ts"],"names":[],"mappings":"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"}
@@ -1,21 +0,0 @@
1
- /**
2
- * Configuration Sources - Load from Environment, Files, and Options
3
- *
4
- * This module handles loading configuration from different sources with clear precedence:
5
- * Environment Variables > createApp Options > Config File > Schema Defaults
6
- */
7
- import { AppConfig } from '../../types/config.js';
8
- import { MoroOptions } from '../../types/core.js';
9
- /**
10
- * Configuration source metadata for debugging
11
- */
12
- export interface ConfigSourceInfo {
13
- source: 'environment' | 'createApp' | 'configFile' | 'default';
14
- path: string;
15
- value: any;
16
- }
17
- /**
18
- * Load configuration from all sources with proper precedence
19
- * Returns a validated, complete configuration object
20
- */
21
- export declare function loadConfigFromAllSources(createAppOptions?: MoroOptions): AppConfig;