@morojs/moro 1.6.2 → 1.6.4

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 (366) hide show
  1. package/dist/core/http/http-server.js +12 -9
  2. package/dist/core/http/http-server.js.map +1 -1
  3. package/dist/core/http/uws-http-server.js +1 -1
  4. package/dist/core/http/uws-http-server.js.map +1 -1
  5. package/dist/core/middleware/built-in/auth/core.d.ts +78 -0
  6. package/dist/core/middleware/built-in/auth/core.js +358 -0
  7. package/dist/core/middleware/built-in/auth/core.js.map +1 -0
  8. package/dist/core/middleware/built-in/{auth-helpers.js → auth/helpers.js} +1 -1
  9. package/dist/core/middleware/built-in/auth/helpers.js.map +1 -0
  10. package/dist/core/middleware/built-in/auth/hook.d.ts +30 -0
  11. package/dist/core/middleware/built-in/auth/hook.js +99 -0
  12. package/dist/core/middleware/built-in/auth/hook.js.map +1 -0
  13. package/dist/core/middleware/built-in/auth/index.d.ts +7 -0
  14. package/dist/core/middleware/built-in/auth/index.js +15 -0
  15. package/dist/core/middleware/built-in/auth/index.js.map +1 -0
  16. package/dist/core/middleware/built-in/{jwt-helpers.js → auth/jwt-helpers.js} +1 -1
  17. package/dist/core/middleware/built-in/auth/jwt-helpers.js.map +1 -0
  18. package/dist/core/middleware/built-in/auth/middleware.d.ts +23 -0
  19. package/dist/core/middleware/built-in/auth/middleware.js +71 -0
  20. package/dist/core/middleware/built-in/auth/middleware.js.map +1 -0
  21. package/dist/core/middleware/built-in/{auth-providers.d.ts → auth/providers.d.ts} +1 -1
  22. package/dist/core/middleware/built-in/{auth-providers.js → auth/providers.js} +1 -1
  23. package/dist/core/middleware/built-in/auth/providers.js.map +1 -0
  24. package/dist/core/middleware/built-in/{adapters → cache/adapters}/cache/file.d.ts +1 -1
  25. package/dist/core/middleware/built-in/{adapters → cache/adapters}/cache/file.js +1 -1
  26. package/dist/core/middleware/built-in/cache/adapters/cache/file.js.map +1 -0
  27. package/dist/core/middleware/built-in/{adapters → cache/adapters}/cache/index.d.ts +1 -1
  28. package/dist/core/middleware/built-in/cache/adapters/cache/index.js.map +1 -0
  29. package/dist/core/middleware/built-in/{adapters → cache/adapters}/cache/memory.d.ts +1 -1
  30. package/dist/core/middleware/built-in/{adapters → cache/adapters}/cache/memory.js +1 -1
  31. package/dist/core/middleware/built-in/cache/adapters/cache/memory.js.map +1 -0
  32. package/dist/core/middleware/built-in/{adapters → cache/adapters}/cache/redis.d.ts +1 -1
  33. package/dist/core/middleware/built-in/{adapters → cache/adapters}/cache/redis.js +2 -2
  34. package/dist/core/middleware/built-in/cache/adapters/cache/redis.js.map +1 -0
  35. package/dist/core/middleware/built-in/{adapters → cache/adapters}/index.d.ts +0 -2
  36. package/{src/core/middleware/built-in/adapters/index.ts → dist/core/middleware/built-in/cache/adapters/index.js} +1 -3
  37. package/dist/core/middleware/built-in/cache/adapters/index.js.map +1 -0
  38. package/dist/core/middleware/built-in/cache/core.d.ts +37 -0
  39. package/dist/core/middleware/built-in/cache/core.js +87 -0
  40. package/dist/core/middleware/built-in/cache/core.js.map +1 -0
  41. package/dist/core/middleware/built-in/cache/hook.d.ts +20 -0
  42. package/dist/core/middleware/built-in/{cache.js → cache/hook.js} +22 -5
  43. package/dist/core/middleware/built-in/cache/hook.js.map +1 -0
  44. package/dist/core/middleware/built-in/cache/index.d.ts +3 -0
  45. package/dist/core/middleware/built-in/cache/index.js +9 -0
  46. package/dist/core/middleware/built-in/cache/index.js.map +1 -0
  47. package/dist/core/middleware/built-in/cache/middleware.d.ts +17 -0
  48. package/dist/core/middleware/built-in/cache/middleware.js +44 -0
  49. package/dist/core/middleware/built-in/cache/middleware.js.map +1 -0
  50. package/dist/core/middleware/built-in/{adapters → cdn/adapters}/cdn/azure.d.ts +1 -1
  51. package/dist/core/middleware/built-in/{adapters → cdn/adapters}/cdn/azure.js +1 -1
  52. package/dist/core/middleware/built-in/cdn/adapters/cdn/azure.js.map +1 -0
  53. package/dist/core/middleware/built-in/{adapters → cdn/adapters}/cdn/cloudflare.d.ts +1 -1
  54. package/dist/core/middleware/built-in/{adapters → cdn/adapters}/cdn/cloudflare.js +1 -1
  55. package/dist/core/middleware/built-in/cdn/adapters/cdn/cloudflare.js.map +1 -0
  56. package/dist/core/middleware/built-in/{adapters → cdn/adapters}/cdn/cloudfront.d.ts +1 -1
  57. package/dist/core/middleware/built-in/{adapters → cdn/adapters}/cdn/cloudfront.js +2 -2
  58. package/dist/core/middleware/built-in/cdn/adapters/cdn/cloudfront.js.map +1 -0
  59. package/dist/core/middleware/built-in/{adapters → cdn/adapters}/cdn/index.d.ts +1 -1
  60. package/dist/core/middleware/built-in/cdn/adapters/cdn/index.js.map +1 -0
  61. package/dist/core/middleware/built-in/cdn/adapters/index.d.ts +2 -0
  62. package/dist/core/middleware/built-in/{adapters → cdn/adapters}/index.js +0 -2
  63. package/dist/core/middleware/built-in/cdn/adapters/index.js.map +1 -0
  64. package/dist/core/middleware/built-in/cdn/core.d.ts +43 -0
  65. package/dist/core/middleware/built-in/cdn/core.js +144 -0
  66. package/dist/core/middleware/built-in/cdn/core.js.map +1 -0
  67. package/dist/core/middleware/built-in/cdn/hook.d.ts +22 -0
  68. package/dist/core/middleware/built-in/cdn/hook.js +70 -0
  69. package/dist/core/middleware/built-in/cdn/hook.js.map +1 -0
  70. package/dist/core/middleware/built-in/cdn/index.d.ts +5 -0
  71. package/dist/core/middleware/built-in/cdn/index.js +11 -0
  72. package/dist/core/middleware/built-in/cdn/index.js.map +1 -0
  73. package/dist/core/middleware/built-in/cdn/middleware.d.ts +21 -0
  74. package/dist/core/middleware/built-in/cdn/middleware.js +52 -0
  75. package/dist/core/middleware/built-in/cdn/middleware.js.map +1 -0
  76. package/dist/core/middleware/built-in/cookie/core.d.ts +37 -0
  77. package/dist/core/middleware/built-in/cookie/core.js +83 -0
  78. package/dist/core/middleware/built-in/cookie/core.js.map +1 -0
  79. package/dist/core/middleware/built-in/cookie/hook.d.ts +20 -0
  80. package/dist/core/middleware/built-in/cookie/hook.js +47 -0
  81. package/dist/core/middleware/built-in/cookie/hook.js.map +1 -0
  82. package/dist/core/middleware/built-in/cookie/index.d.ts +3 -0
  83. package/dist/core/middleware/built-in/cookie/index.js +9 -0
  84. package/dist/core/middleware/built-in/cookie/index.js.map +1 -0
  85. package/dist/core/middleware/built-in/cookie/middleware.d.ts +17 -0
  86. package/dist/core/middleware/built-in/cookie/middleware.js +36 -0
  87. package/dist/core/middleware/built-in/cookie/middleware.js.map +1 -0
  88. package/dist/core/middleware/built-in/cors/core.d.ts +23 -0
  89. package/dist/core/middleware/built-in/cors/core.js +51 -0
  90. package/dist/core/middleware/built-in/cors/core.js.map +1 -0
  91. package/dist/core/middleware/built-in/cors/hook.d.ts +17 -0
  92. package/dist/core/middleware/built-in/cors/hook.js +37 -0
  93. package/dist/core/middleware/built-in/cors/hook.js.map +1 -0
  94. package/dist/core/middleware/built-in/cors/index.d.ts +3 -0
  95. package/dist/core/middleware/built-in/cors/index.js +9 -0
  96. package/dist/core/middleware/built-in/cors/index.js.map +1 -0
  97. package/dist/core/middleware/built-in/cors/middleware.d.ts +16 -0
  98. package/dist/core/middleware/built-in/cors/middleware.js +22 -0
  99. package/dist/core/middleware/built-in/cors/middleware.js.map +1 -0
  100. package/dist/core/middleware/built-in/csp/core.d.ts +45 -0
  101. package/dist/core/middleware/built-in/csp/core.js +88 -0
  102. package/dist/core/middleware/built-in/csp/core.js.map +1 -0
  103. package/dist/core/middleware/built-in/csp/hook.d.ts +22 -0
  104. package/dist/core/middleware/built-in/csp/hook.js +47 -0
  105. package/dist/core/middleware/built-in/csp/hook.js.map +1 -0
  106. package/dist/core/middleware/built-in/csp/index.d.ts +3 -0
  107. package/dist/core/middleware/built-in/csp/index.js +9 -0
  108. package/dist/core/middleware/built-in/csp/index.js.map +1 -0
  109. package/dist/core/middleware/built-in/csp/middleware.d.ts +19 -0
  110. package/dist/core/middleware/built-in/csp/middleware.js +29 -0
  111. package/dist/core/middleware/built-in/csp/middleware.js.map +1 -0
  112. package/dist/core/middleware/built-in/csrf/core.d.ts +28 -0
  113. package/dist/core/middleware/built-in/csrf/core.js +69 -0
  114. package/dist/core/middleware/built-in/csrf/core.js.map +1 -0
  115. package/dist/core/middleware/built-in/csrf/hook.d.ts +17 -0
  116. package/dist/core/middleware/built-in/csrf/hook.js +45 -0
  117. package/dist/core/middleware/built-in/csrf/hook.js.map +1 -0
  118. package/dist/core/middleware/built-in/csrf/index.d.ts +3 -0
  119. package/dist/core/middleware/built-in/csrf/index.js +9 -0
  120. package/dist/core/middleware/built-in/csrf/index.js.map +1 -0
  121. package/dist/core/middleware/built-in/csrf/middleware.d.ts +16 -0
  122. package/dist/core/middleware/built-in/csrf/middleware.js +34 -0
  123. package/dist/core/middleware/built-in/csrf/middleware.js.map +1 -0
  124. package/dist/core/middleware/built-in/error-tracker/index.d.ts +1 -0
  125. package/dist/core/middleware/built-in/error-tracker/index.js +4 -0
  126. package/dist/core/middleware/built-in/error-tracker/index.js.map +1 -0
  127. package/dist/core/middleware/built-in/error-tracker/middleware.d.ts +12 -0
  128. package/dist/core/middleware/built-in/{error-tracker.js → error-tracker/middleware.js} +14 -3
  129. package/dist/core/middleware/built-in/error-tracker/middleware.js.map +1 -0
  130. package/dist/core/middleware/built-in/index.d.ts +25 -59
  131. package/dist/core/middleware/built-in/index.js +31 -31
  132. package/dist/core/middleware/built-in/index.js.map +1 -1
  133. package/dist/core/middleware/built-in/performance-monitor/index.d.ts +1 -0
  134. package/dist/core/middleware/built-in/performance-monitor/index.js +4 -0
  135. package/dist/core/middleware/built-in/performance-monitor/index.js.map +1 -0
  136. package/dist/core/middleware/built-in/performance-monitor/middleware.d.ts +12 -0
  137. package/dist/core/middleware/built-in/{performance-monitor.js → performance-monitor/middleware.js} +14 -3
  138. package/dist/core/middleware/built-in/performance-monitor/middleware.js.map +1 -0
  139. package/dist/core/middleware/built-in/rate-limit/core.d.ts +33 -0
  140. package/dist/core/middleware/built-in/rate-limit/core.js +86 -0
  141. package/dist/core/middleware/built-in/rate-limit/core.js.map +1 -0
  142. package/dist/core/middleware/built-in/rate-limit/hook.d.ts +20 -0
  143. package/dist/core/middleware/built-in/{rate-limit.js → rate-limit/hook.js} +22 -16
  144. package/dist/core/middleware/built-in/rate-limit/hook.js.map +1 -0
  145. package/dist/core/middleware/built-in/rate-limit/index.d.ts +3 -0
  146. package/dist/core/middleware/built-in/rate-limit/index.js +9 -0
  147. package/dist/core/middleware/built-in/rate-limit/index.js.map +1 -0
  148. package/dist/core/middleware/built-in/rate-limit/middleware.d.ts +16 -0
  149. package/dist/core/middleware/built-in/rate-limit/middleware.js +35 -0
  150. package/dist/core/middleware/built-in/rate-limit/middleware.js.map +1 -0
  151. package/dist/core/middleware/built-in/request-logger/index.d.ts +1 -0
  152. package/dist/core/middleware/built-in/request-logger/index.js +4 -0
  153. package/dist/core/middleware/built-in/request-logger/index.js.map +1 -0
  154. package/dist/core/middleware/built-in/request-logger/middleware.d.ts +12 -0
  155. package/dist/core/middleware/built-in/{request-logger.js → request-logger/middleware.js} +14 -3
  156. package/dist/core/middleware/built-in/request-logger/middleware.js.map +1 -0
  157. package/dist/core/middleware/built-in/session/core.d.ts +73 -0
  158. package/dist/core/middleware/built-in/session/core.js +227 -0
  159. package/dist/core/middleware/built-in/session/core.js.map +1 -0
  160. package/dist/core/middleware/built-in/session/hook.d.ts +17 -0
  161. package/dist/core/middleware/built-in/session/hook.js +53 -0
  162. package/dist/core/middleware/built-in/session/hook.js.map +1 -0
  163. package/dist/core/middleware/built-in/session/index.d.ts +3 -0
  164. package/dist/core/middleware/built-in/session/index.js +9 -0
  165. package/dist/core/middleware/built-in/session/index.js.map +1 -0
  166. package/dist/core/middleware/built-in/session/middleware.d.ts +17 -0
  167. package/dist/core/middleware/built-in/session/middleware.js +38 -0
  168. package/dist/core/middleware/built-in/session/middleware.js.map +1 -0
  169. package/dist/core/middleware/built-in/sse/core.d.ts +44 -0
  170. package/dist/core/middleware/built-in/sse/core.js +117 -0
  171. package/dist/core/middleware/built-in/sse/core.js.map +1 -0
  172. package/dist/core/middleware/built-in/sse/hook.d.ts +18 -0
  173. package/dist/core/middleware/built-in/sse/hook.js +60 -0
  174. package/dist/core/middleware/built-in/sse/hook.js.map +1 -0
  175. package/dist/core/middleware/built-in/sse/index.d.ts +3 -0
  176. package/dist/core/middleware/built-in/sse/index.js +9 -0
  177. package/dist/core/middleware/built-in/sse/index.js.map +1 -0
  178. package/dist/core/middleware/built-in/sse/middleware.d.ts +18 -0
  179. package/dist/core/middleware/built-in/sse/middleware.js +43 -0
  180. package/dist/core/middleware/built-in/sse/middleware.js.map +1 -0
  181. package/dist/core/middleware/built-in/validation/core.d.ts +23 -0
  182. package/dist/core/middleware/built-in/validation/core.js +93 -0
  183. package/dist/core/middleware/built-in/validation/core.js.map +1 -0
  184. package/dist/core/middleware/built-in/validation/hook.d.ts +13 -0
  185. package/dist/core/middleware/built-in/{validation.js → validation/hook.js} +14 -3
  186. package/dist/core/middleware/built-in/validation/hook.js.map +1 -0
  187. package/dist/core/middleware/built-in/validation/index.d.ts +3 -0
  188. package/dist/core/middleware/built-in/validation/index.js +9 -0
  189. package/dist/core/middleware/built-in/validation/index.js.map +1 -0
  190. package/dist/core/middleware/built-in/validation/middleware.d.ts +16 -0
  191. package/dist/core/middleware/built-in/validation/middleware.js +27 -0
  192. package/dist/core/middleware/built-in/validation/middleware.js.map +1 -0
  193. package/dist/core/middleware/index.js +6 -0
  194. package/dist/core/middleware/index.js.map +1 -1
  195. package/dist/core/routing/unified-router.d.ts +4 -20
  196. package/dist/core/routing/unified-router.js +61 -106
  197. package/dist/core/routing/unified-router.js.map +1 -1
  198. package/dist/index.d.ts +3 -2
  199. package/dist/index.js +3 -2
  200. package/dist/index.js.map +1 -1
  201. package/dist/moro.js +12 -18
  202. package/dist/moro.js.map +1 -1
  203. package/dist/types/hooks.d.ts +3 -0
  204. package/package.json +2 -6
  205. package/dist/core/middleware/built-in/adapters/cache/file.js.map +0 -1
  206. package/dist/core/middleware/built-in/adapters/cache/index.js.map +0 -1
  207. package/dist/core/middleware/built-in/adapters/cache/memory.js.map +0 -1
  208. package/dist/core/middleware/built-in/adapters/cache/redis.js.map +0 -1
  209. package/dist/core/middleware/built-in/adapters/cdn/azure.js.map +0 -1
  210. package/dist/core/middleware/built-in/adapters/cdn/cloudflare.js.map +0 -1
  211. package/dist/core/middleware/built-in/adapters/cdn/cloudfront.js.map +0 -1
  212. package/dist/core/middleware/built-in/adapters/cdn/index.js.map +0 -1
  213. package/dist/core/middleware/built-in/adapters/index.js.map +0 -1
  214. package/dist/core/middleware/built-in/auth-helpers.js.map +0 -1
  215. package/dist/core/middleware/built-in/auth-providers.js.map +0 -1
  216. package/dist/core/middleware/built-in/auth.d.ts +0 -30
  217. package/dist/core/middleware/built-in/auth.js +0 -348
  218. package/dist/core/middleware/built-in/auth.js.map +0 -1
  219. package/dist/core/middleware/built-in/cache.d.ts +0 -3
  220. package/dist/core/middleware/built-in/cache.js.map +0 -1
  221. package/dist/core/middleware/built-in/cdn.d.ts +0 -3
  222. package/dist/core/middleware/built-in/cdn.js +0 -109
  223. package/dist/core/middleware/built-in/cdn.js.map +0 -1
  224. package/dist/core/middleware/built-in/cookie.d.ts +0 -14
  225. package/dist/core/middleware/built-in/cookie.js +0 -64
  226. package/dist/core/middleware/built-in/cookie.js.map +0 -1
  227. package/dist/core/middleware/built-in/cors.d.ts +0 -2
  228. package/dist/core/middleware/built-in/cors.js +0 -25
  229. package/dist/core/middleware/built-in/cors.js.map +0 -1
  230. package/dist/core/middleware/built-in/csp.d.ts +0 -22
  231. package/dist/core/middleware/built-in/csp.js +0 -68
  232. package/dist/core/middleware/built-in/csp.js.map +0 -1
  233. package/dist/core/middleware/built-in/csrf.d.ts +0 -9
  234. package/dist/core/middleware/built-in/csrf.js +0 -60
  235. package/dist/core/middleware/built-in/csrf.js.map +0 -1
  236. package/dist/core/middleware/built-in/error-tracker.d.ts +0 -1
  237. package/dist/core/middleware/built-in/error-tracker.js.map +0 -1
  238. package/dist/core/middleware/built-in/jwt-helpers.js.map +0 -1
  239. package/dist/core/middleware/built-in/performance-monitor.d.ts +0 -1
  240. package/dist/core/middleware/built-in/performance-monitor.js.map +0 -1
  241. package/dist/core/middleware/built-in/rate-limit.d.ts +0 -6
  242. package/dist/core/middleware/built-in/rate-limit.js.map +0 -1
  243. package/dist/core/middleware/built-in/request-logger.d.ts +0 -1
  244. package/dist/core/middleware/built-in/request-logger.js.map +0 -1
  245. package/dist/core/middleware/built-in/session.d.ts +0 -41
  246. package/dist/core/middleware/built-in/session.js +0 -205
  247. package/dist/core/middleware/built-in/session.js.map +0 -1
  248. package/dist/core/middleware/built-in/sse.d.ts +0 -6
  249. package/dist/core/middleware/built-in/sse.js +0 -69
  250. package/dist/core/middleware/built-in/sse.js.map +0 -1
  251. package/dist/core/middleware/built-in/validation.d.ts +0 -2
  252. package/dist/core/middleware/built-in/validation.js.map +0 -1
  253. package/jest.config.mjs +0 -41
  254. package/src/core/auth/README.md +0 -339
  255. package/src/core/auth/morojs-adapter.ts +0 -415
  256. package/src/core/config/config-manager.ts +0 -133
  257. package/src/core/config/config-sources.ts +0 -600
  258. package/src/core/config/config-validator.ts +0 -1116
  259. package/src/core/config/file-loader.ts +0 -150
  260. package/src/core/config/index.ts +0 -109
  261. package/src/core/config/schema.ts +0 -164
  262. package/src/core/config/utils.ts +0 -244
  263. package/src/core/database/README.md +0 -238
  264. package/src/core/database/adapters/drizzle.ts +0 -415
  265. package/src/core/database/adapters/index.ts +0 -42
  266. package/src/core/database/adapters/mongodb.ts +0 -317
  267. package/src/core/database/adapters/mysql.ts +0 -235
  268. package/src/core/database/adapters/postgresql.ts +0 -226
  269. package/src/core/database/adapters/redis.ts +0 -379
  270. package/src/core/database/adapters/sqlite.ts +0 -263
  271. package/src/core/database/index.ts +0 -3
  272. package/src/core/docs/index.ts +0 -231
  273. package/src/core/docs/openapi-generator.ts +0 -576
  274. package/src/core/docs/schema-to-openapi.ts +0 -145
  275. package/src/core/docs/simple-docs.ts +0 -295
  276. package/src/core/docs/swagger-ui.ts +0 -354
  277. package/src/core/docs/zod-to-openapi.ts +0 -532
  278. package/src/core/events/event-bus.ts +0 -231
  279. package/src/core/events/index.ts +0 -12
  280. package/src/core/framework.ts +0 -885
  281. package/src/core/http/http-server.ts +0 -1847
  282. package/src/core/http/index.ts +0 -7
  283. package/src/core/http/uws-http-server.ts +0 -591
  284. package/src/core/logger/filters.ts +0 -153
  285. package/src/core/logger/index.ts +0 -21
  286. package/src/core/logger/logger.ts +0 -1033
  287. package/src/core/logger/outputs.ts +0 -132
  288. package/src/core/middleware/built-in/adapters/cache/file.ts +0 -104
  289. package/src/core/middleware/built-in/adapters/cache/index.ts +0 -23
  290. package/src/core/middleware/built-in/adapters/cache/memory.ts +0 -73
  291. package/src/core/middleware/built-in/adapters/cache/redis.ts +0 -114
  292. package/src/core/middleware/built-in/adapters/cdn/azure.ts +0 -60
  293. package/src/core/middleware/built-in/adapters/cdn/cloudflare.ts +0 -83
  294. package/src/core/middleware/built-in/adapters/cdn/cloudfront.ts +0 -94
  295. package/src/core/middleware/built-in/adapters/cdn/index.ts +0 -23
  296. package/src/core/middleware/built-in/auth-helpers.ts +0 -401
  297. package/src/core/middleware/built-in/auth-providers.ts +0 -480
  298. package/src/core/middleware/built-in/auth.ts +0 -410
  299. package/src/core/middleware/built-in/cache.ts +0 -213
  300. package/src/core/middleware/built-in/cdn.ts +0 -124
  301. package/src/core/middleware/built-in/cookie.ts +0 -85
  302. package/src/core/middleware/built-in/cors.ts +0 -38
  303. package/src/core/middleware/built-in/csp.ts +0 -101
  304. package/src/core/middleware/built-in/csrf.ts +0 -82
  305. package/src/core/middleware/built-in/error-tracker.ts +0 -16
  306. package/src/core/middleware/built-in/index.ts +0 -87
  307. package/src/core/middleware/built-in/jwt-helpers.ts +0 -243
  308. package/src/core/middleware/built-in/performance-monitor.ts +0 -25
  309. package/src/core/middleware/built-in/rate-limit.ts +0 -60
  310. package/src/core/middleware/built-in/request-logger.ts +0 -16
  311. package/src/core/middleware/built-in/session.ts +0 -287
  312. package/src/core/middleware/built-in/sse.ts +0 -88
  313. package/src/core/middleware/built-in/validation.ts +0 -33
  314. package/src/core/middleware/index.ts +0 -177
  315. package/src/core/modules/auto-discovery.ts +0 -726
  316. package/src/core/modules/index.ts +0 -3
  317. package/src/core/modules/modules.ts +0 -135
  318. package/src/core/networking/adapters/index.ts +0 -17
  319. package/src/core/networking/adapters/socketio-adapter.ts +0 -254
  320. package/src/core/networking/adapters/uws-adapter.ts +0 -619
  321. package/src/core/networking/adapters/ws-adapter.ts +0 -429
  322. package/src/core/networking/index.ts +0 -4
  323. package/src/core/networking/service-discovery.ts +0 -303
  324. package/src/core/networking/websocket-adapter.ts +0 -217
  325. package/src/core/networking/websocket-manager.ts +0 -308
  326. package/src/core/pooling/object-pool-manager.ts +0 -630
  327. package/src/core/routing/app-integration.ts +0 -164
  328. package/src/core/routing/index.ts +0 -261
  329. package/src/core/routing/path-matcher.ts +0 -222
  330. package/src/core/routing/router.ts +0 -97
  331. package/src/core/routing/unified-router.ts +0 -870
  332. package/src/core/runtime/aws-lambda-adapter.ts +0 -147
  333. package/src/core/runtime/base-adapter.ts +0 -130
  334. package/src/core/runtime/cloudflare-workers-adapter.ts +0 -152
  335. package/src/core/runtime/index.ts +0 -62
  336. package/src/core/runtime/node-adapter.ts +0 -202
  337. package/src/core/runtime/vercel-edge-adapter.ts +0 -114
  338. package/src/core/utilities/circuit-breaker.ts +0 -46
  339. package/src/core/utilities/container.ts +0 -736
  340. package/src/core/utilities/hooks.ts +0 -142
  341. package/src/core/utilities/index.ts +0 -17
  342. package/src/core/utilities/package-utils.ts +0 -59
  343. package/src/core/validation/adapters.ts +0 -147
  344. package/src/core/validation/index.ts +0 -258
  345. package/src/core/validation/schema-interface.ts +0 -100
  346. package/src/index.ts +0 -233
  347. package/src/moro.ts +0 -1728
  348. package/src/types/auth.ts +0 -440
  349. package/src/types/cache.ts +0 -38
  350. package/src/types/cdn.ts +0 -22
  351. package/src/types/config.ts +0 -229
  352. package/src/types/core.ts +0 -58
  353. package/src/types/database.ts +0 -32
  354. package/src/types/discovery.ts +0 -7
  355. package/src/types/events.ts +0 -82
  356. package/src/types/hooks.ts +0 -47
  357. package/src/types/http.ts +0 -89
  358. package/src/types/logger.ts +0 -102
  359. package/src/types/module.ts +0 -99
  360. package/src/types/runtime.ts +0 -76
  361. package/src/types/session.ts +0 -89
  362. package/tsconfig.json +0 -23
  363. /package/dist/core/middleware/built-in/{auth-helpers.d.ts → auth/helpers.d.ts} +0 -0
  364. /package/dist/core/middleware/built-in/{jwt-helpers.d.ts → auth/jwt-helpers.d.ts} +0 -0
  365. /package/dist/core/middleware/built-in/{adapters → cache/adapters}/cache/index.js +0 -0
  366. /package/dist/core/middleware/built-in/{adapters → cdn/adapters}/cdn/index.js +0 -0
@@ -1,3 +0,0 @@
1
- // Module System - Centralized Exports
2
- export { defineModule, ModuleLoader } from './modules.js';
3
- export { ModuleDiscovery, autoDiscoverModuleDirectories } from './auto-discovery.js';
@@ -1,135 +0,0 @@
1
- // Module System - Definition and Loading
2
- import { promises as fs } from 'fs';
3
- import path from 'path';
4
- import { Container } from '../utilities/index.js';
5
- import { ModuleConfig } from '../../types/module.js';
6
- import { ModuleDefinition, ModuleRoute, ModuleSocket } from '../../types/module.js';
7
- import { createFrameworkLogger } from '../logger/index.js';
8
-
9
- // Module Definition Function
10
- export function defineModule(definition: ModuleDefinition): ModuleConfig {
11
- const moduleConfig: ModuleConfig = {
12
- name: definition.name,
13
- version: definition.version,
14
- dependencies: definition.dependencies,
15
- };
16
-
17
- // Store route definitions and handlers
18
- if (definition.routes) {
19
- moduleConfig.routes = definition.routes.map((route, index) => ({
20
- method: route.method,
21
- path: route.path,
22
- handler: `route_handler_${index}`, // Standardized naming
23
- validation: route.validation,
24
- cache: route.cache,
25
- rateLimit: route.rateLimit,
26
- middleware: route.middleware,
27
- // Copy all additional properties for extensibility
28
- ...Object.fromEntries(
29
- Object.entries(route).filter(
30
- ([key]) =>
31
- ![
32
- 'method',
33
- 'path',
34
- 'handler',
35
- 'validation',
36
- 'cache',
37
- 'rateLimit',
38
- 'middleware',
39
- ].includes(key)
40
- )
41
- ),
42
- }));
43
-
44
- // Store the actual route handler functions
45
- moduleConfig.routeHandlers = definition.routes.reduce(
46
- (acc, route, index) => {
47
- acc[`route_handler_${index}`] = route.handler;
48
- return acc;
49
- },
50
- {} as Record<string, Function>
51
- );
52
- }
53
-
54
- // Store socket definitions and handlers
55
- if (definition.sockets) {
56
- moduleConfig.sockets = definition.sockets.map((socket, index) => ({
57
- event: socket.event,
58
- handler: `socket_handler_${index}`, // Standardized naming
59
- validation: socket.validation,
60
- rateLimit: socket.rateLimit,
61
- rooms: socket.rooms,
62
- broadcast: socket.broadcast,
63
- }));
64
-
65
- // Store the actual socket handler functions
66
- moduleConfig.socketHandlers = definition.sockets.reduce(
67
- (acc, socket, index) => {
68
- acc[`socket_handler_${index}`] = socket.handler;
69
- return acc;
70
- },
71
- {} as Record<string, Function>
72
- );
73
- }
74
-
75
- // Copy config
76
- if (definition.config) {
77
- moduleConfig.config = definition.config;
78
- }
79
-
80
- return moduleConfig;
81
- }
82
-
83
- // Module Loader Class
84
- export class ModuleLoader {
85
- private moduleLogger = createFrameworkLogger('MODULE_LOADER');
86
-
87
- constructor(private container: Container) {}
88
-
89
- async discoverModules(directory: string): Promise<ModuleConfig[]> {
90
- const modules: ModuleConfig[] = [];
91
-
92
- try {
93
- const moduleDir = path.resolve(directory);
94
- const entries = await fs.readdir(moduleDir, { withFileTypes: true });
95
-
96
- for (const entry of entries) {
97
- if (entry.isDirectory()) {
98
- const modulePath = path.join(moduleDir, entry.name, 'index.ts');
99
-
100
- try {
101
- await fs.access(modulePath);
102
- const moduleExports = await import(modulePath);
103
-
104
- // Look for exported module config
105
- for (const exportName of Object.keys(moduleExports)) {
106
- const exported = moduleExports[exportName];
107
- if (exported && typeof exported === 'object' && exported.name && exported.version) {
108
- modules.push(exported as ModuleConfig);
109
- }
110
- }
111
- } catch (error) {
112
- this.moduleLogger.warn(`Could not load module from ${modulePath}`, 'MODULE_LOADER', {
113
- error: error instanceof Error ? error.message : String(error),
114
- });
115
- }
116
- }
117
- }
118
- } catch (error) {
119
- this.moduleLogger.error('Failed to discover modules', 'MODULE_LOADER', {
120
- error: error instanceof Error ? error.message : String(error),
121
- });
122
- }
123
-
124
- return modules;
125
- }
126
-
127
- validateModule(config: ModuleConfig): boolean {
128
- if (!config.name || !config.version) {
129
- return false;
130
- }
131
-
132
- // [TODO] Add more validation logic here
133
- return true;
134
- }
135
- }
@@ -1,17 +0,0 @@
1
- // WebSocket Adapters for Moro Framework
2
- // Export all available adapters from this centralized location
3
-
4
- export { SocketIOAdapter } from './socketio-adapter.js';
5
- export { WSAdapter } from './ws-adapter.js';
6
- export { UWebSocketsAdapter } from './uws-adapter.js';
7
-
8
- // Re-export the adapter interface for convenience
9
- export type {
10
- WebSocketAdapter,
11
- WebSocketAdapterOptions,
12
- WebSocketNamespace,
13
- WebSocketConnection,
14
- WebSocketEmitter,
15
- WebSocketMiddleware,
16
- WebSocketEventHandler,
17
- } from '../websocket-adapter.js';
@@ -1,254 +0,0 @@
1
- // Socket.IO WebSocket Adapter for Moro Framework
2
- // Implements the WebSocket adapter interface using Socket.IO
3
-
4
- import { resolveUserPackage } from '../../utilities/package-utils.js';
5
- import {
6
- WebSocketAdapter,
7
- WebSocketAdapterOptions,
8
- WebSocketNamespace,
9
- WebSocketConnection,
10
- WebSocketEmitter,
11
- WebSocketMiddleware,
12
- } from '../websocket-adapter.js';
13
-
14
- /**
15
- * Socket.IO adapter implementation
16
- */
17
- export class SocketIOAdapter implements WebSocketAdapter {
18
- private io: any; // Socket.IO server instance
19
- private customIdGenerator?: () => string;
20
-
21
- async initialize(httpServer: any, options: WebSocketAdapterOptions = {}): Promise<void> {
22
- try {
23
- // Dynamic import from user's context to find their installed socket.io
24
- const socketIOPath = resolveUserPackage('socket.io');
25
- const { Server } = await import(socketIOPath);
26
-
27
- this.io = new Server(httpServer, {
28
- cors: options.cors || { origin: '*' },
29
- path: options.path || '/socket.io/',
30
- compression: options.compression !== false,
31
- maxHttpBufferSize: options.maxPayloadLength,
32
- ...options,
33
- });
34
-
35
- // Apply custom ID generator if set
36
- if (this.customIdGenerator) {
37
- (this.io.engine as any).generateId = this.customIdGenerator;
38
- }
39
-
40
- // Setup compression if enabled
41
- if (options.compression) {
42
- this.setCompression(true);
43
- }
44
- } catch (error) {
45
- throw new Error(
46
- 'Socket.IO not found. Install it with: npm install socket.io\n' +
47
- 'Or use a different WebSocket adapter.'
48
- );
49
- }
50
- }
51
-
52
- createNamespace(namespace: string): WebSocketNamespace {
53
- if (!this.io) {
54
- throw new Error('Socket.IO adapter not initialized');
55
- }
56
-
57
- const ns = this.io.of(namespace);
58
- return new SocketIONamespaceWrapper(ns);
59
- }
60
-
61
- getDefaultNamespace(): WebSocketNamespace {
62
- return this.createNamespace('/');
63
- }
64
-
65
- async close(): Promise<void> {
66
- if (this.io) {
67
- return new Promise(resolve => {
68
- this.io.close(() => resolve());
69
- });
70
- }
71
- }
72
-
73
- setCompression(enabled: boolean, options: any = {}): void {
74
- if (this.io && enabled) {
75
- (this.io.engine as any).compression = true;
76
- (this.io.engine as any).perMessageDeflate = {
77
- threshold: 1024,
78
- concurrencyLimit: 10,
79
- memLevel: 8,
80
- ...options,
81
- };
82
- }
83
- }
84
-
85
- setCustomIdGenerator(generator: () => string): void {
86
- this.customIdGenerator = generator;
87
- if (this.io) {
88
- (this.io.engine as any).generateId = generator;
89
- }
90
- }
91
-
92
- getAdapterName(): string {
93
- return 'socket.io';
94
- }
95
-
96
- getConnectionCount(): number {
97
- if (!this.io) return 0;
98
- return this.io.engine.clientsCount || 0;
99
- }
100
- }
101
-
102
- /**
103
- * Socket.IO namespace wrapper
104
- */
105
- class SocketIONamespaceWrapper implements WebSocketNamespace {
106
- constructor(private namespace: any) {}
107
-
108
- on(event: 'connection', handler: (socket: WebSocketConnection) => void): void {
109
- this.namespace.on(event, (socket: any) => {
110
- handler(new SocketIOConnectionWrapper(socket));
111
- });
112
- }
113
-
114
- emit(event: string, data: any): void {
115
- this.namespace.emit(event, data);
116
- }
117
-
118
- to(room: string | string[]): WebSocketEmitter {
119
- const target = Array.isArray(room)
120
- ? room.reduce((acc, r) => acc.to(r), this.namespace)
121
- : this.namespace.to(room);
122
- return new SocketIOEmitterWrapper(target);
123
- }
124
-
125
- except(room: string | string[]): WebSocketEmitter {
126
- const target = Array.isArray(room)
127
- ? room.reduce((acc, r) => acc.except(r), this.namespace)
128
- : this.namespace.except(room);
129
- return new SocketIOEmitterWrapper(target);
130
- }
131
-
132
- getSockets(): WebSocketConnection[] {
133
- const sockets = this.namespace.sockets;
134
- return Array.from(sockets.values()).map((socket: any) => new SocketIOConnectionWrapper(socket));
135
- }
136
-
137
- getConnectionCount(): number {
138
- return this.namespace.sockets.size;
139
- }
140
-
141
- use(middleware: WebSocketMiddleware): void {
142
- this.namespace.use((socket: any, next: any) => {
143
- middleware(new SocketIOConnectionWrapper(socket), next);
144
- });
145
- }
146
- }
147
-
148
- /**
149
- * Socket.IO connection wrapper
150
- */
151
- class SocketIOConnectionWrapper implements WebSocketConnection {
152
- public data: Record<string, any> = {};
153
-
154
- constructor(private socket: any) {
155
- // Map socket.data to our data property
156
- this.data = socket.data || {};
157
- }
158
-
159
- get id(): string {
160
- return this.socket.id;
161
- }
162
-
163
- get ip(): string | undefined {
164
- return this.socket.handshake?.address;
165
- }
166
-
167
- get headers(): Record<string, string> | undefined {
168
- return this.socket.handshake?.headers;
169
- }
170
-
171
- get connected(): boolean {
172
- return this.socket.connected;
173
- }
174
-
175
- get broadcast(): WebSocketEmitter {
176
- return new SocketIOEmitterWrapper(this.socket.broadcast);
177
- }
178
-
179
- on(event: string, handler: (data: any, callback?: (response?: any) => void) => void): void {
180
- this.socket.on(event, handler);
181
- }
182
-
183
- onAny(handler: (event: string, ...args: any[]) => void): void {
184
- this.socket.onAny(handler);
185
- }
186
-
187
- emit(event: string, data: any): void {
188
- this.socket.emit(event, data);
189
- }
190
-
191
- compressedEmit(event: string, data: any): void {
192
- this.socket.compress(true).emit(event, data);
193
- }
194
-
195
- join(room: string | string[]): void {
196
- if (Array.isArray(room)) {
197
- room.forEach(r => this.socket.join(r));
198
- } else {
199
- this.socket.join(room);
200
- }
201
- }
202
-
203
- leave(room: string | string[]): void {
204
- if (Array.isArray(room)) {
205
- room.forEach(r => this.socket.leave(r));
206
- } else {
207
- this.socket.leave(room);
208
- }
209
- }
210
-
211
- to(room: string | string[]): WebSocketEmitter {
212
- const target = Array.isArray(room)
213
- ? room.reduce((acc, r) => acc.to(r), this.socket)
214
- : this.socket.to(room);
215
- return new SocketIOEmitterWrapper(target);
216
- }
217
-
218
- getRooms(): Set<string> {
219
- return new Set(this.socket.rooms);
220
- }
221
-
222
- disconnect(close?: boolean): void {
223
- this.socket.disconnect(close);
224
- }
225
- }
226
-
227
- /**
228
- * Socket.IO emitter wrapper
229
- */
230
- class SocketIOEmitterWrapper implements WebSocketEmitter {
231
- constructor(private emitter: any) {}
232
-
233
- emit(event: string, data: any): void {
234
- this.emitter.emit(event, data);
235
- }
236
-
237
- to(room: string | string[]): WebSocketEmitter {
238
- const target = Array.isArray(room)
239
- ? room.reduce((acc, r) => acc.to(r), this.emitter)
240
- : this.emitter.to(room);
241
- return new SocketIOEmitterWrapper(target);
242
- }
243
-
244
- except(room: string | string[]): WebSocketEmitter {
245
- const target = Array.isArray(room)
246
- ? room.reduce((acc, r) => acc.except(r), this.emitter)
247
- : this.emitter.except(room);
248
- return new SocketIOEmitterWrapper(target);
249
- }
250
-
251
- compress(compress: boolean): WebSocketEmitter {
252
- return new SocketIOEmitterWrapper(this.emitter.compress(compress));
253
- }
254
- }