@morojs/moro 1.6.2 → 1.6.3

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,532 +0,0 @@
1
- // Zod to OpenAPI Schema Converter
2
- // Transforms Zod schemas into OpenAPI 3.0 schema definitions
3
-
4
- import { createFrameworkLogger } from '../logger/index.js';
5
- import { createUserRequire, isPackageAvailable } from '../utilities/package-utils.js';
6
-
7
- const logger = createFrameworkLogger('ZodToOpenAPI');
8
-
9
- // Dynamic Zod imports (optional dependency)
10
- let zodModule: any = null;
11
- let zodLoadAttempted = false;
12
-
13
- // Lazy synchronous initialization for Zod
14
- function loadZodSync() {
15
- if (zodLoadAttempted) {
16
- return zodModule;
17
- }
18
-
19
- zodLoadAttempted = true;
20
-
21
- try {
22
- if (!isPackageAvailable('zod')) {
23
- zodModule = null;
24
- return zodModule;
25
- }
26
-
27
- // Use synchronous require for immediate availability
28
- const userRequire = createUserRequire();
29
- zodModule = userRequire('zod');
30
- } catch {
31
- // Zod not available - that's fine!
32
- zodModule = null;
33
- }
34
-
35
- return zodModule;
36
- }
37
-
38
- // OpenAPI schema types
39
- export interface OpenAPISchema {
40
- type?: string;
41
- format?: string;
42
- description?: string;
43
- example?: any;
44
- enum?: any[];
45
- items?: OpenAPISchema;
46
- properties?: Record<string, OpenAPISchema>;
47
- required?: string[];
48
- minimum?: number;
49
- maximum?: number;
50
- minLength?: number;
51
- maxLength?: number;
52
- minItems?: number;
53
- maxItems?: number;
54
- pattern?: string;
55
- default?: any;
56
- oneOf?: OpenAPISchema[];
57
- anyOf?: OpenAPISchema[];
58
- allOf?: OpenAPISchema[];
59
- nullable?: boolean;
60
- additionalProperties?: boolean | OpenAPISchema;
61
- }
62
-
63
- // Conversion options
64
- export interface ConversionOptions {
65
- includeExamples?: boolean;
66
- includeDescriptions?: boolean;
67
- strict?: boolean;
68
- }
69
-
70
- // Main conversion function
71
- export function zodToOpenAPI(schema: any, options: ConversionOptions = {}): OpenAPISchema {
72
- // Check if Zod is available
73
- const zod = loadZodSync();
74
- if (!zod) {
75
- throw new Error('Zod is not installed. Please install zod to use zodToOpenAPI function.');
76
- }
77
-
78
- const opts = {
79
- includeExamples: true,
80
- includeDescriptions: true,
81
- strict: false,
82
- ...options,
83
- };
84
-
85
- try {
86
- return convertZodType(schema._def, opts);
87
- } catch (error) {
88
- logger.error('Failed to convert Zod schema to OpenAPI', 'Conversion', {
89
- error: error instanceof Error ? error.message : String(error),
90
- });
91
-
92
- // Return a basic schema as fallback
93
- return {
94
- type: 'object',
95
- description: 'Schema conversion failed',
96
- additionalProperties: true,
97
- };
98
- }
99
- }
100
-
101
- // Convert Zod type definition to OpenAPI schema
102
- function convertZodType(def: any, options: ConversionOptions): OpenAPISchema {
103
- if (!def || typeof def !== 'object') {
104
- logger.warn('Invalid Zod definition received', 'Conversion', { def });
105
- return { type: 'object', additionalProperties: true };
106
- }
107
-
108
- // Handle newer Zod structure - check for 'type' field first, then 'typeName'
109
- const typeName = def.typeName || def.type;
110
-
111
- if (!typeName) {
112
- logger.warn('Missing typeName/type in Zod definition', 'Conversion', {
113
- def: JSON.stringify(def).substring(0, 200),
114
- });
115
- return { type: 'object', additionalProperties: true };
116
- }
117
-
118
- switch (typeName) {
119
- case 'ZodString':
120
- case 'string':
121
- return convertZodString(def, options);
122
-
123
- case 'ZodNumber':
124
- case 'number':
125
- return convertZodNumber(def, options);
126
-
127
- case 'ZodBoolean':
128
- case 'boolean':
129
- return convertZodBoolean(def, options);
130
-
131
- case 'ZodObject':
132
- case 'object':
133
- return convertZodObject(def, options);
134
-
135
- case 'ZodArray':
136
- case 'array':
137
- return convertZodArray(def, options);
138
-
139
- case 'ZodEnum':
140
- case 'enum':
141
- return convertZodEnum(def, options);
142
-
143
- case 'ZodOptional':
144
- case 'optional':
145
- return convertZodOptional(def, options);
146
-
147
- case 'ZodDefault':
148
- case 'default':
149
- return convertZodDefault(def, options);
150
-
151
- case 'ZodUnion':
152
- case 'union':
153
- return convertZodUnion(def, options);
154
-
155
- case 'ZodLiteral':
156
- case 'literal':
157
- return convertZodLiteral(def, options);
158
-
159
- case 'ZodDate':
160
- return {
161
- type: 'string',
162
- format: 'date-time',
163
- description: options.includeDescriptions ? 'ISO 8601 date-time string' : undefined,
164
- };
165
-
166
- case 'ZodUUID':
167
- return {
168
- type: 'string',
169
- format: 'uuid',
170
- pattern: '^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$',
171
- description: options.includeDescriptions ? 'UUID string' : undefined,
172
- };
173
-
174
- default:
175
- logger.warn(`Unsupported Zod type: ${typeName}`, 'Conversion');
176
- return {
177
- type: 'object',
178
- description: `Unsupported type: ${typeName}`,
179
- additionalProperties: true,
180
- };
181
- }
182
- }
183
-
184
- // Convert ZodString
185
- function convertZodString(def: any, options: ConversionOptions): OpenAPISchema {
186
- const schema: OpenAPISchema = { type: 'string' };
187
-
188
- // Handle checks (validations)
189
- if (def.checks) {
190
- for (const check of def.checks) {
191
- switch (check.kind) {
192
- case 'min':
193
- schema.minLength = check.value;
194
- break;
195
- case 'max':
196
- schema.maxLength = check.value;
197
- break;
198
- case 'email':
199
- schema.format = 'email';
200
- break;
201
- case 'url':
202
- schema.format = 'uri';
203
- break;
204
- case 'uuid':
205
- schema.format = 'uuid';
206
- schema.pattern = '^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$';
207
- break;
208
- case 'regex':
209
- schema.pattern = check.regex.source;
210
- break;
211
- case 'datetime':
212
- schema.format = 'date-time';
213
- break;
214
- }
215
- }
216
- }
217
-
218
- if (options.includeExamples) {
219
- if (schema.format === 'email') {
220
- schema.example = 'user@example.com';
221
- } else if (schema.format === 'uuid') {
222
- schema.example = '123e4567-e89b-12d3-a456-426614174000';
223
- } else if (schema.format === 'date-time') {
224
- schema.example = '2023-12-01T10:00:00Z';
225
- } else {
226
- schema.example = 'string';
227
- }
228
- }
229
-
230
- return schema;
231
- }
232
-
233
- // Convert ZodNumber
234
- function convertZodNumber(def: any, options: ConversionOptions): OpenAPISchema {
235
- const schema: OpenAPISchema = { type: 'number' };
236
-
237
- if (def.checks) {
238
- for (const check of def.checks) {
239
- switch (check.kind) {
240
- case 'min':
241
- schema.minimum = check.value;
242
- break;
243
- case 'max':
244
- schema.maximum = check.value;
245
- break;
246
- case 'int':
247
- schema.type = 'integer';
248
- break;
249
- }
250
- }
251
- }
252
-
253
- if (options.includeExamples) {
254
- schema.example = schema.type === 'integer' ? 42 : 3.14;
255
- }
256
-
257
- return schema;
258
- }
259
-
260
- // Convert ZodBoolean
261
- function convertZodBoolean(def: any, options: ConversionOptions): OpenAPISchema {
262
- const schema: OpenAPISchema = { type: 'boolean' };
263
-
264
- if (options.includeExamples) {
265
- schema.example = true;
266
- }
267
-
268
- return schema;
269
- }
270
-
271
- // Convert ZodObject
272
- function convertZodObject(def: any, options: ConversionOptions): OpenAPISchema {
273
- const schema: OpenAPISchema = {
274
- type: 'object',
275
- properties: {},
276
- required: [],
277
- };
278
-
279
- // Handle both old and new Zod object structures
280
- let shape;
281
- if (typeof def.shape === 'function') {
282
- shape = def.shape();
283
- } else if (def.shape && typeof def.shape === 'object') {
284
- shape = def.shape;
285
- } else {
286
- logger.warn('Could not extract shape from Zod object', 'Conversion');
287
- return { type: 'object', additionalProperties: true };
288
- }
289
-
290
- for (const [key, value] of Object.entries(shape)) {
291
- const zodType = value as any;
292
-
293
- // Handle the nested structure properly
294
- let typeDef;
295
- if (zodType._def) {
296
- typeDef = zodType._def;
297
- } else if (zodType.def) {
298
- typeDef = zodType.def;
299
- } else {
300
- typeDef = zodType;
301
- }
302
-
303
- schema.properties![key] = convertZodType(typeDef, options);
304
-
305
- // Check if field is required (not optional and no default)
306
- const typeStr = typeDef.typeName || typeDef.type;
307
- if (
308
- typeStr !== 'optional' &&
309
- typeStr !== 'ZodOptional' &&
310
- typeStr !== 'default' &&
311
- typeStr !== 'ZodDefault'
312
- ) {
313
- schema.required!.push(key);
314
- }
315
- }
316
-
317
- // Remove required array if empty
318
- if (schema.required!.length === 0) {
319
- delete schema.required;
320
- }
321
-
322
- return schema;
323
- }
324
-
325
- // Convert ZodArray
326
- function convertZodArray(def: any, options: ConversionOptions): OpenAPISchema {
327
- const schema: OpenAPISchema = {
328
- type: 'array',
329
- items: def.type && def.type._def ? convertZodType(def.type._def, options) : { type: 'string' },
330
- };
331
-
332
- // Handle array length constraints
333
- if (def.minLength !== null && def.minLength !== undefined) {
334
- schema.minLength = typeof def.minLength === 'object' ? def.minLength.value : def.minLength;
335
- }
336
- if (def.maxLength !== null && def.maxLength !== undefined) {
337
- schema.maxLength = typeof def.maxLength === 'object' ? def.maxLength.value : def.maxLength;
338
- }
339
-
340
- if (options.includeExamples && schema.items) {
341
- schema.example = [schema.items.example || 'item'];
342
- }
343
-
344
- return schema;
345
- }
346
-
347
- // Convert ZodEnum
348
- function convertZodEnum(def: any, options: ConversionOptions): OpenAPISchema {
349
- const schema: OpenAPISchema = {
350
- type: 'string',
351
- enum: def.values || [],
352
- };
353
-
354
- if (options.includeExamples && def.values && Array.isArray(def.values) && def.values.length > 0) {
355
- schema.example = def.values[0];
356
- }
357
-
358
- return schema;
359
- }
360
-
361
- // Convert ZodOptional
362
- function convertZodOptional(def: any, options: ConversionOptions): OpenAPISchema {
363
- return convertZodType(def.innerType._def, options);
364
- }
365
-
366
- // Convert ZodDefault
367
- function convertZodDefault(def: any, options: ConversionOptions): OpenAPISchema {
368
- const schema = convertZodType(def.innerType._def, options);
369
-
370
- // Handle both function and property forms of defaultValue
371
- if (typeof def.defaultValue === 'function') {
372
- try {
373
- schema.default = def.defaultValue();
374
- } catch (error) {
375
- logger.warn('Failed to get default value from function', 'Conversion', {
376
- error,
377
- });
378
- schema.default = undefined;
379
- }
380
- } else if (def.defaultValue !== undefined) {
381
- schema.default = def.defaultValue;
382
- } else {
383
- logger.warn('No default value found in ZodDefault', 'Conversion');
384
- schema.default = undefined;
385
- }
386
-
387
- return schema;
388
- }
389
-
390
- // Convert ZodUnion
391
- function convertZodUnion(def: any, options: ConversionOptions): OpenAPISchema {
392
- const schemas = def.options.map((option: any) => convertZodType(option._def, options));
393
-
394
- return {
395
- oneOf: schemas,
396
- };
397
- }
398
-
399
- // Convert ZodLiteral
400
- function convertZodLiteral(def: any, options: ConversionOptions): OpenAPISchema {
401
- const value = def.value;
402
-
403
- return {
404
- type: typeof value as any,
405
- enum: [value],
406
- example: options.includeExamples ? value : undefined,
407
- };
408
- }
409
-
410
- // Helper functions
411
- function isOptionalType(type: any): boolean {
412
- return (type._def as any).typeName === 'ZodOptional';
413
- }
414
-
415
- function hasDefault(type: any): boolean {
416
- return (type._def as any).typeName === 'ZodDefault';
417
- }
418
-
419
- // Generate example data from Zod schema
420
- export function generateExampleFromSchema(schema: any): any {
421
- // Check if Zod is available
422
- const zod = loadZodSync();
423
- if (!zod) {
424
- throw new Error(
425
- 'Zod is not installed. Please install zod to use generateExampleFromSchema function.'
426
- );
427
- }
428
-
429
- try {
430
- return generateExample(schema._def);
431
- } catch (error) {
432
- logger.warn('Failed to generate example from schema', 'ExampleGeneration', {
433
- error: error instanceof Error ? error.message : String(error),
434
- });
435
- return {};
436
- }
437
- }
438
-
439
- function generateExample(def: any): any {
440
- const typeName = def.typeName;
441
-
442
- switch (typeName) {
443
- case 'ZodString':
444
- if (def.checks) {
445
- for (const check of def.checks) {
446
- if (check.kind === 'email') return 'user@example.com';
447
- if (check.kind === 'uuid') return '123e4567-e89b-12d3-a456-426614174000';
448
- if (check.kind === 'url') return 'https://example.com';
449
- if (check.kind === 'datetime') return '2023-12-01T10:00:00Z';
450
- }
451
- }
452
- return 'string';
453
-
454
- case 'ZodNumber':
455
- return 42;
456
-
457
- case 'ZodBoolean':
458
- return true;
459
-
460
- case 'ZodObject': {
461
- const example: any = {};
462
- let shape;
463
-
464
- try {
465
- if (typeof def.shape === 'function') {
466
- shape = def.shape();
467
- } else if (def.shape && typeof def.shape === 'object') {
468
- shape = def.shape;
469
- } else {
470
- return {};
471
- }
472
-
473
- for (const [key, value] of Object.entries(shape)) {
474
- const zodType = value as any;
475
- if (!isOptionalType(zodType)) {
476
- example[key] = generateExample(zodType._def);
477
- }
478
- }
479
- } catch (error) {
480
- logger.warn('Failed to generate object example', 'ExampleGeneration', {
481
- error,
482
- });
483
- return {};
484
- }
485
-
486
- return example;
487
- }
488
-
489
- case 'ZodArray':
490
- if (def.type && def.type._def) {
491
- const itemExample = generateExample(def.type._def);
492
- return [itemExample];
493
- }
494
- return ['item'];
495
-
496
- case 'ZodEnum':
497
- return def.values && Array.isArray(def.values) && def.values.length > 0
498
- ? def.values[0]
499
- : 'enum-value';
500
-
501
- case 'ZodOptional':
502
- return generateExample(def.innerType._def);
503
-
504
- case 'ZodDefault':
505
- // Handle both function and property forms of defaultValue
506
- if (typeof def.defaultValue === 'function') {
507
- try {
508
- return def.defaultValue();
509
- } catch (error) {
510
- logger.warn(
511
- 'Failed to get default value from function in example generation',
512
- 'ExampleGeneration',
513
- { error }
514
- );
515
- return null;
516
- }
517
- } else if (def.defaultValue !== undefined) {
518
- return def.defaultValue;
519
- } else {
520
- return null;
521
- }
522
-
523
- case 'ZodUnion':
524
- return generateExample(def.options[0]._def);
525
-
526
- case 'ZodLiteral':
527
- return def.value;
528
-
529
- default:
530
- return null;
531
- }
532
- }