@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
@@ -1,12 +1,46 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.loadConfigFileSync = loadConfigFileSync;
37
+ exports.loadConfigFile = loadConfigFile;
38
+ exports.applyConfigAsEnvironmentVariables = applyConfigAsEnvironmentVariables;
1
39
  // Configuration File Loader - Load moro.config.js/ts files
2
- import { existsSync } from 'fs';
3
- import { join } from 'path';
4
- import { createRequire } from 'module';
5
- import { createFrameworkLogger } from '../logger/index.js';
6
- const logger = createFrameworkLogger('ConfigFile');
7
- // Create require function for ESM to enable synchronous config loading
8
- // Use process.cwd() as base since we're loading with absolute paths anyway
9
- const moduleRequire = createRequire(join(process.cwd(), 'index.js'));
40
+ const fs_1 = require("fs");
41
+ const path_1 = require("path");
42
+ const logger_1 = require("../logger");
43
+ const logger = (0, logger_1.createFrameworkLogger)('ConfigFile');
10
44
  /**
11
45
  * Supported configuration file names in order of preference
12
46
  */
@@ -16,24 +50,50 @@ const CONFIG_FILES = ['moro.config.js', 'moro.config.ts'];
16
50
  * @param cwd Current working directory to search for config files
17
51
  * @returns Partial configuration object or null if no config file found
18
52
  */
19
- export function loadConfigFileSync(cwd = process.cwd()) {
53
+ function loadConfigFileSync(cwd = process.cwd()) {
20
54
  const configFile = findConfigFile(cwd);
21
55
  if (!configFile) {
22
56
  logger.debug('No configuration file found');
23
57
  return null;
24
58
  }
59
+ // Handle TypeScript files by trying dynamic import (works with tsx/ts-node runtimes)
60
+ if (configFile.endsWith('.ts')) {
61
+ logger.debug('Found TypeScript config file, attempting to load with dynamic import');
62
+ try {
63
+ // When running under tsx/ts-node, dynamic imports work synchronously for TypeScript
64
+ // We can use require() with the current environment that already has TypeScript support
65
+ const config = require(configFile);
66
+ const configData = config.default || config;
67
+ if (!configData || typeof configData !== 'object') {
68
+ logger.warn(`Configuration file ${configFile} did not export a valid configuration object`);
69
+ return null;
70
+ }
71
+ logger.info(`TypeScript configuration loaded from: ${configFile}`);
72
+ return configData;
73
+ }
74
+ catch (error) {
75
+ logger.debug('TypeScript config loading failed in sync mode, this is expected if not running with tsx/ts-node');
76
+ logger.debug('Error details:', String(error));
77
+ return null;
78
+ }
79
+ }
80
+ // Only .js files use the standard synchronous loading
81
+ if (!configFile.endsWith('.js')) {
82
+ logger.debug('Found config file with unsupported extension. Only .js and .ts files are supported.');
83
+ return null;
84
+ }
25
85
  logger.debug(`Loading configuration from: ${configFile}`);
26
86
  try {
27
- // Use createRequire to enable synchronous loading in ESM
28
- // Clear the require cache to ensure fresh config on each load
29
- delete moduleRequire.cache[moduleRequire.resolve(configFile)];
30
- const config = moduleRequire(configFile);
31
- if (!config || typeof config !== 'object') {
87
+ // Clear module cache to ensure fresh load
88
+ delete require.cache[require.resolve(configFile)];
89
+ const config = require(configFile);
90
+ const configData = config.default || config;
91
+ if (!configData || typeof configData !== 'object') {
32
92
  logger.warn(`Configuration file ${configFile} did not export a valid configuration object`);
33
93
  return null;
34
94
  }
35
95
  logger.info(`Configuration loaded from: ${configFile}`);
36
- return config;
96
+ return configData;
37
97
  }
38
98
  catch (error) {
39
99
  logger.error(`Failed to load configuration file ${configFile}:`, String(error));
@@ -46,7 +106,7 @@ export function loadConfigFileSync(cwd = process.cwd()) {
46
106
  * @param cwd Current working directory to search for config files
47
107
  * @returns Partial configuration object or null if no config file found
48
108
  */
49
- export async function loadConfigFile(cwd = process.cwd()) {
109
+ async function loadConfigFile(cwd = process.cwd()) {
50
110
  const configFile = findConfigFile(cwd);
51
111
  if (!configFile) {
52
112
  logger.debug('No configuration file found');
@@ -73,8 +133,8 @@ export async function loadConfigFile(cwd = process.cwd()) {
73
133
  */
74
134
  function findConfigFile(cwd) {
75
135
  for (const fileName of CONFIG_FILES) {
76
- const filePath = join(cwd, fileName);
77
- if (existsSync(filePath)) {
136
+ const filePath = (0, path_1.join)(cwd, fileName);
137
+ if ((0, fs_1.existsSync)(filePath)) {
78
138
  return filePath;
79
139
  }
80
140
  }
@@ -91,7 +151,7 @@ async function importConfigFile(filePath) {
91
151
  }
92
152
  try {
93
153
  // Use dynamic import to load the configuration
94
- const configModule = await import(filePath);
154
+ const configModule = await Promise.resolve(`${filePath}`).then(s => __importStar(require(s)));
95
155
  // Handle both default export and module.exports
96
156
  const config = configModule.default || configModule;
97
157
  return config;
@@ -118,4 +178,174 @@ async function setupTypeScriptLoader() {
118
178
  // the TypeScript transpilation is already handled by those tools.
119
179
  logger.debug('TypeScript config loading delegated to runtime environment');
120
180
  }
181
+ /**
182
+ * Convert a configuration object to environment variable mappings
183
+ * This function flattens the config object and sets corresponding environment variables
184
+ */
185
+ function applyConfigAsEnvironmentVariables(config) {
186
+ if (!config || typeof config !== 'object') {
187
+ return;
188
+ }
189
+ // Apply server configuration
190
+ if (config.server) {
191
+ setEnvIfNotSet('PORT', config.server.port?.toString());
192
+ setEnvIfNotSet('HOST', config.server.host);
193
+ setEnvIfNotSet('NODE_ENV', config.server.environment);
194
+ setEnvIfNotSet('MAX_CONNECTIONS', config.server.maxConnections?.toString());
195
+ setEnvIfNotSet('REQUEST_TIMEOUT', config.server.timeout?.toString());
196
+ }
197
+ // Apply database configuration
198
+ if (config.database) {
199
+ setEnvIfNotSet('DATABASE_URL', config.database.url);
200
+ if (config.database.redis) {
201
+ setEnvIfNotSet('REDIS_URL', config.database.redis.url);
202
+ setEnvIfNotSet('REDIS_MAX_RETRIES', config.database.redis.maxRetries?.toString());
203
+ setEnvIfNotSet('REDIS_RETRY_DELAY', config.database.redis.retryDelay?.toString());
204
+ setEnvIfNotSet('REDIS_KEY_PREFIX', config.database.redis.keyPrefix);
205
+ }
206
+ if (config.database.mysql) {
207
+ setEnvIfNotSet('MYSQL_HOST', config.database.mysql.host);
208
+ setEnvIfNotSet('MYSQL_PORT', config.database.mysql.port?.toString());
209
+ setEnvIfNotSet('MYSQL_DATABASE', config.database.mysql.database);
210
+ setEnvIfNotSet('MYSQL_USERNAME', config.database.mysql.username);
211
+ setEnvIfNotSet('MYSQL_PASSWORD', config.database.mysql.password);
212
+ setEnvIfNotSet('MYSQL_CONNECTION_LIMIT', config.database.mysql.connectionLimit?.toString());
213
+ setEnvIfNotSet('MYSQL_ACQUIRE_TIMEOUT', config.database.mysql.acquireTimeout?.toString());
214
+ setEnvIfNotSet('MYSQL_TIMEOUT', config.database.mysql.timeout?.toString());
215
+ }
216
+ }
217
+ // Apply service discovery configuration
218
+ if (config.serviceDiscovery) {
219
+ setEnvIfNotSet('SERVICE_DISCOVERY_ENABLED', config.serviceDiscovery.enabled?.toString());
220
+ setEnvIfNotSet('DISCOVERY_TYPE', config.serviceDiscovery.type);
221
+ setEnvIfNotSet('CONSUL_URL', config.serviceDiscovery.consulUrl);
222
+ setEnvIfNotSet('K8S_NAMESPACE', config.serviceDiscovery.kubernetesNamespace);
223
+ setEnvIfNotSet('HEALTH_CHECK_INTERVAL', config.serviceDiscovery.healthCheckInterval?.toString());
224
+ setEnvIfNotSet('DISCOVERY_RETRY_ATTEMPTS', config.serviceDiscovery.retryAttempts?.toString());
225
+ }
226
+ // Apply logging configuration
227
+ if (config.logging) {
228
+ setEnvIfNotSet('LOG_LEVEL', config.logging.level);
229
+ setEnvIfNotSet('LOG_FORMAT', config.logging.format);
230
+ setEnvIfNotSet('LOG_COLORS', config.logging.enableColors?.toString());
231
+ setEnvIfNotSet('LOG_TIMESTAMP', config.logging.enableTimestamp?.toString());
232
+ setEnvIfNotSet('LOG_CONTEXT', config.logging.enableContext?.toString());
233
+ if (config.logging.outputs) {
234
+ setEnvIfNotSet('LOG_CONSOLE', config.logging.outputs.console?.toString());
235
+ if (config.logging.outputs.file) {
236
+ setEnvIfNotSet('LOG_FILE_ENABLED', config.logging.outputs.file.enabled?.toString());
237
+ setEnvIfNotSet('LOG_FILE_PATH', config.logging.outputs.file.path);
238
+ setEnvIfNotSet('LOG_FILE_MAX_SIZE', config.logging.outputs.file.maxSize);
239
+ setEnvIfNotSet('LOG_FILE_MAX_FILES', config.logging.outputs.file.maxFiles?.toString());
240
+ }
241
+ if (config.logging.outputs.webhook) {
242
+ setEnvIfNotSet('LOG_WEBHOOK_ENABLED', config.logging.outputs.webhook.enabled?.toString());
243
+ setEnvIfNotSet('LOG_WEBHOOK_URL', config.logging.outputs.webhook.url);
244
+ if (config.logging.outputs.webhook.headers) {
245
+ setEnvIfNotSet('LOG_WEBHOOK_HEADERS', JSON.stringify(config.logging.outputs.webhook.headers));
246
+ }
247
+ }
248
+ }
249
+ }
250
+ // Apply module defaults
251
+ if (config.modules) {
252
+ if (config.modules.cache) {
253
+ setEnvIfNotSet('CACHE_ENABLED', config.modules.cache.enabled?.toString());
254
+ setEnvIfNotSet('DEFAULT_CACHE_TTL', config.modules.cache.defaultTtl?.toString());
255
+ setEnvIfNotSet('CACHE_MAX_SIZE', config.modules.cache.maxSize?.toString());
256
+ setEnvIfNotSet('CACHE_STRATEGY', config.modules.cache.strategy);
257
+ }
258
+ if (config.modules.rateLimit) {
259
+ setEnvIfNotSet('RATE_LIMIT_ENABLED', config.modules.rateLimit.enabled?.toString());
260
+ setEnvIfNotSet('DEFAULT_RATE_LIMIT_REQUESTS', config.modules.rateLimit.defaultRequests?.toString());
261
+ setEnvIfNotSet('DEFAULT_RATE_LIMIT_WINDOW', config.modules.rateLimit.defaultWindow?.toString());
262
+ setEnvIfNotSet('RATE_LIMIT_SKIP_SUCCESS', config.modules.rateLimit.skipSuccessfulRequests?.toString());
263
+ setEnvIfNotSet('RATE_LIMIT_SKIP_FAILED', config.modules.rateLimit.skipFailedRequests?.toString());
264
+ }
265
+ if (config.modules.validation) {
266
+ setEnvIfNotSet('VALIDATION_ENABLED', config.modules.validation.enabled?.toString());
267
+ setEnvIfNotSet('VALIDATION_STRIP_UNKNOWN', config.modules.validation.stripUnknown?.toString());
268
+ setEnvIfNotSet('VALIDATION_ABORT_EARLY', config.modules.validation.abortEarly?.toString());
269
+ }
270
+ }
271
+ // Apply security configuration
272
+ if (config.security) {
273
+ if (config.security.cors) {
274
+ setEnvIfNotSet('CORS_ENABLED', config.security.cors.enabled?.toString());
275
+ if (typeof config.security.cors.origin === 'string') {
276
+ setEnvIfNotSet('CORS_ORIGIN', config.security.cors.origin);
277
+ }
278
+ else if (Array.isArray(config.security.cors.origin)) {
279
+ setEnvIfNotSet('CORS_ORIGIN', config.security.cors.origin.join(','));
280
+ }
281
+ else if (typeof config.security.cors.origin === 'boolean') {
282
+ setEnvIfNotSet('CORS_ORIGIN', config.security.cors.origin.toString());
283
+ }
284
+ setEnvIfNotSet('CORS_METHODS', config.security.cors.methods?.join(','));
285
+ setEnvIfNotSet('CORS_HEADERS', config.security.cors.allowedHeaders?.join(','));
286
+ setEnvIfNotSet('CORS_CREDENTIALS', config.security.cors.credentials?.toString());
287
+ }
288
+ if (config.security.helmet) {
289
+ setEnvIfNotSet('HELMET_ENABLED', config.security.helmet.enabled?.toString());
290
+ setEnvIfNotSet('HELMET_CSP', config.security.helmet.contentSecurityPolicy?.toString());
291
+ setEnvIfNotSet('HELMET_HSTS', config.security.helmet.hsts?.toString());
292
+ setEnvIfNotSet('HELMET_NO_SNIFF', config.security.helmet.noSniff?.toString());
293
+ setEnvIfNotSet('HELMET_FRAMEGUARD', config.security.helmet.frameguard?.toString());
294
+ }
295
+ if (config.security.rateLimit?.global) {
296
+ setEnvIfNotSet('GLOBAL_RATE_LIMIT_ENABLED', config.security.rateLimit.global.enabled?.toString());
297
+ setEnvIfNotSet('GLOBAL_RATE_LIMIT_REQUESTS', config.security.rateLimit.global.requests?.toString());
298
+ setEnvIfNotSet('GLOBAL_RATE_LIMIT_WINDOW', config.security.rateLimit.global.window?.toString());
299
+ }
300
+ }
301
+ // Apply external services configuration
302
+ if (config.external) {
303
+ if (config.external.stripe) {
304
+ setEnvIfNotSet('STRIPE_SECRET_KEY', config.external.stripe.secretKey);
305
+ setEnvIfNotSet('STRIPE_PUBLISHABLE_KEY', config.external.stripe.publishableKey);
306
+ setEnvIfNotSet('STRIPE_WEBHOOK_SECRET', config.external.stripe.webhookSecret);
307
+ setEnvIfNotSet('STRIPE_API_VERSION', config.external.stripe.apiVersion);
308
+ }
309
+ if (config.external.paypal) {
310
+ setEnvIfNotSet('PAYPAL_CLIENT_ID', config.external.paypal.clientId);
311
+ setEnvIfNotSet('PAYPAL_CLIENT_SECRET', config.external.paypal.clientSecret);
312
+ setEnvIfNotSet('PAYPAL_WEBHOOK_ID', config.external.paypal.webhookId);
313
+ setEnvIfNotSet('PAYPAL_ENVIRONMENT', config.external.paypal.environment);
314
+ }
315
+ if (config.external.smtp) {
316
+ setEnvIfNotSet('SMTP_HOST', config.external.smtp.host);
317
+ setEnvIfNotSet('SMTP_PORT', config.external.smtp.port?.toString());
318
+ setEnvIfNotSet('SMTP_SECURE', config.external.smtp.secure?.toString());
319
+ setEnvIfNotSet('SMTP_USERNAME', config.external.smtp.username);
320
+ setEnvIfNotSet('SMTP_PASSWORD', config.external.smtp.password);
321
+ }
322
+ }
323
+ // Apply performance configuration
324
+ if (config.performance) {
325
+ if (config.performance.compression) {
326
+ setEnvIfNotSet('COMPRESSION_ENABLED', config.performance.compression.enabled?.toString());
327
+ setEnvIfNotSet('COMPRESSION_LEVEL', config.performance.compression.level?.toString());
328
+ setEnvIfNotSet('COMPRESSION_THRESHOLD', config.performance.compression.threshold?.toString());
329
+ }
330
+ if (config.performance.circuitBreaker) {
331
+ setEnvIfNotSet('CIRCUIT_BREAKER_ENABLED', config.performance.circuitBreaker.enabled?.toString());
332
+ setEnvIfNotSet('CIRCUIT_BREAKER_THRESHOLD', config.performance.circuitBreaker.failureThreshold?.toString());
333
+ setEnvIfNotSet('CIRCUIT_BREAKER_RESET', config.performance.circuitBreaker.resetTimeout?.toString());
334
+ setEnvIfNotSet('CIRCUIT_BREAKER_MONITOR', config.performance.circuitBreaker.monitoringPeriod?.toString());
335
+ }
336
+ if (config.performance.clustering) {
337
+ setEnvIfNotSet('CLUSTERING_ENABLED', config.performance.clustering.enabled?.toString());
338
+ setEnvIfNotSet('CLUSTER_WORKERS', config.performance.clustering.workers?.toString());
339
+ }
340
+ }
341
+ }
342
+ /**
343
+ * Set environment variable only if it's not already set
344
+ * This ensures environment variables take precedence over config file values
345
+ */
346
+ function setEnvIfNotSet(key, value) {
347
+ if (value !== undefined && process.env[key] === undefined) {
348
+ process.env[key] = value;
349
+ }
350
+ }
121
351
  //# sourceMappingURL=file-loader.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"file-loader.js","sourceRoot":"","sources":["../../../src/core/config/file-loader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"file-loader.js","sourceRoot":"","sources":["../../../src/core/config/file-loader.ts"],"names":[],"mappings":"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"}
@@ -1,53 +1,24 @@
1
+ export * from './schema';
2
+ export * from './loader';
3
+ export * from './utils';
4
+ export * from './file-loader';
5
+ import type { AppConfig } from './schema';
1
6
  /**
2
- * Configuration System - Immutable Config with createApp Override Support
3
- *
4
- * This is the main entry point for the MoroJS configuration system.
5
- * It provides a clean, immutable configuration that is locked at createApp() time.
6
- *
7
- * Key Features:
8
- * - Immutable configuration after initialization
9
- * - Clear precedence: Env Vars > createApp Options > Config File > Defaults
10
- * - Type-safe validation
11
- * - Single source of truth
7
+ * Initialize and load the global application configuration
8
+ * This should be called once at application startup
12
9
  */
13
- export * from './schema.js';
14
- export * from './config-sources.js';
15
- export * from './config-validator.js';
16
- export * from './file-loader.js';
17
- export { initializeAndLockConfig, isConfigLocked, resetConfigForTesting, } from './config-manager.js';
18
- export * from './utils.js';
19
- import { MoroOptions } from '../../types/core.js';
20
- import { AppConfig } from '../../types/config.js';
21
- /**
22
- * Initialize configuration system with createApp options
23
- * This is the main entry point called by createApp()
24
- *
25
- * @param options - createApp options that can override config file and defaults
26
- * @returns Immutable, validated configuration object
27
- */
28
- export declare function initializeConfig(options?: MoroOptions): Readonly<AppConfig>;
29
- /**
30
- * Load configuration without locking (for testing and utilities)
31
- * This maintains backward compatibility with existing code
32
- */
33
- export declare function loadConfig(): AppConfig;
34
- /**
35
- * Load configuration with createApp options (for testing and utilities)
36
- * This maintains backward compatibility with existing code
37
- */
38
- export declare function loadConfigWithOptions(options: MoroOptions): AppConfig;
10
+ export declare function initializeConfig(): AppConfig;
39
11
  /**
40
12
  * Get the current global configuration
41
- * Alias for getGlobalConfig() for backward compatibility
13
+ * Throws if configuration hasn't been initialized
42
14
  */
43
- export declare function getGlobalConfig(): Readonly<AppConfig>;
15
+ export declare function getGlobalConfig(): AppConfig;
44
16
  /**
45
- * Check if configuration has been initialized and locked
46
- * Alias for isConfigLocked() for backward compatibility
17
+ * Check if configuration has been initialized
47
18
  */
48
19
  export declare function isConfigInitialized(): boolean;
49
20
  /**
50
- * Reset configuration state (for testing only)
21
+ * Reset the global configuration state (for testing purposes)
51
22
  * @internal
52
23
  */
53
24
  export declare function resetConfig(): void;
@@ -1,81 +1,70 @@
1
- /**
2
- * Configuration System - Immutable Config with createApp Override Support
3
- *
4
- * This is the main entry point for the MoroJS configuration system.
5
- * It provides a clean, immutable configuration that is locked at createApp() time.
6
- *
7
- * Key Features:
8
- * - Immutable configuration after initialization
9
- * - Clear precedence: Env Vars > createApp Options > Config File > Defaults
10
- * - Type-safe validation
11
- * - Single source of truth
12
- */
13
- // Export types and core components
14
- export * from './schema.js';
15
- export * from './config-sources.js';
16
- export * from './config-validator.js';
17
- export * from './file-loader.js';
18
- // Export specific functions from config-manager to avoid conflicts
19
- export { initializeAndLockConfig, isConfigLocked, resetConfigForTesting, } from './config-manager.js';
20
- // Export utilities for backward compatibility
21
- export * from './utils.js';
22
- import { loadConfigFromAllSources } from './config-sources.js';
23
- import { initializeAndLockConfig, getGlobalConfig as getConfig, isConfigLocked, resetConfigForTesting, } from './config-manager.js';
24
- import { createFrameworkLogger } from '../logger/index.js';
25
- const logger = createFrameworkLogger('ConfigSystem');
26
- /**
27
- * Initialize configuration system with createApp options
28
- * This is the main entry point called by createApp()
29
- *
30
- * @param options - createApp options that can override config file and defaults
31
- * @returns Immutable, validated configuration object
32
- */
33
- export function initializeConfig(options) {
34
- if (isConfigLocked()) {
35
- logger.debug('Configuration already locked, returning existing config');
36
- return getConfig();
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
37
7
  }
38
- logger.debug('Initializing configuration system');
39
- // Load configuration from all sources with proper precedence
40
- const config = loadConfigFromAllSources(options);
41
- // Lock the configuration to prevent further changes
42
- initializeAndLockConfig(config);
43
- logger.info(`Configuration system initialized and locked: ${process.env.NODE_ENV || 'development'}:${config.server.port} (sources: env + file + options + defaults)`);
44
- return config;
45
- }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.initializeConfig = initializeConfig;
18
+ exports.getGlobalConfig = getGlobalConfig;
19
+ exports.isConfigInitialized = isConfigInitialized;
20
+ exports.resetConfig = resetConfig;
21
+ // Configuration System - Main Exports and Utilities
22
+ __exportStar(require("./schema"), exports);
23
+ __exportStar(require("./loader"), exports);
24
+ __exportStar(require("./utils"), exports);
25
+ __exportStar(require("./file-loader"), exports);
26
+ // Main configuration loading function
27
+ const loader_1 = require("./loader");
28
+ const utils_1 = require("./utils");
29
+ // Global configuration instance
30
+ let globalConfig = null;
46
31
  /**
47
- * Load configuration without locking (for testing and utilities)
48
- * This maintains backward compatibility with existing code
32
+ * Initialize and load the global application configuration
33
+ * This should be called once at application startup
49
34
  */
50
- export function loadConfig() {
51
- return loadConfigFromAllSources();
52
- }
53
- /**
54
- * Load configuration with createApp options (for testing and utilities)
55
- * This maintains backward compatibility with existing code
56
- */
57
- export function loadConfigWithOptions(options) {
58
- return loadConfigFromAllSources(options);
35
+ function initializeConfig() {
36
+ if (globalConfig) {
37
+ return globalConfig;
38
+ }
39
+ globalConfig = (0, loader_1.loadConfig)();
40
+ // Also set the config for utils functions
41
+ (0, utils_1.setConfig)(globalConfig);
42
+ return globalConfig;
59
43
  }
60
44
  /**
61
45
  * Get the current global configuration
62
- * Alias for getGlobalConfig() for backward compatibility
46
+ * Throws if configuration hasn't been initialized
63
47
  */
64
- export function getGlobalConfig() {
65
- return getConfig();
48
+ function getGlobalConfig() {
49
+ if (!globalConfig) {
50
+ throw new Error('Configuration not initialized. Call initializeConfig() first.');
51
+ }
52
+ return globalConfig;
66
53
  }
67
54
  /**
68
- * Check if configuration has been initialized and locked
69
- * Alias for isConfigLocked() for backward compatibility
55
+ * Check if configuration has been initialized
70
56
  */
71
- export function isConfigInitialized() {
72
- return isConfigLocked();
57
+ function isConfigInitialized() {
58
+ return globalConfig !== null;
73
59
  }
74
60
  /**
75
- * Reset configuration state (for testing only)
61
+ * Reset the global configuration state (for testing purposes)
76
62
  * @internal
77
63
  */
78
- export function resetConfig() {
79
- resetConfigForTesting();
64
+ function resetConfig() {
65
+ globalConfig = null;
66
+ // Also reset the utils config (by setting it to null via direct access)
67
+ const { setConfig } = require('./utils');
68
+ setConfig(null);
80
69
  }
81
70
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/config/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,mCAAmC;AACnC,cAAc,aAAa,CAAC;AAC5B,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AAEjC,mEAAmE;AACnE,OAAO,EACL,uBAAuB,EACvB,cAAc,EACd,qBAAqB,GACtB,MAAM,qBAAqB,CAAC;AAE7B,8CAA8C;AAC9C,cAAc,YAAY,CAAC;AAI3B,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EACL,uBAAuB,EACvB,eAAe,IAAI,SAAS,EAC5B,cAAc,EACd,qBAAqB,GACtB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAE3D,MAAM,MAAM,GAAG,qBAAqB,CAAC,cAAc,CAAC,CAAC;AAErD;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAqB;IACpD,IAAI,cAAc,EAAE,EAAE,CAAC;QACrB,MAAM,CAAC,KAAK,CAAC,yDAAyD,CAAC,CAAC;QACxE,OAAO,SAAS,EAAE,CAAC;IACrB,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;IAElD,6DAA6D;IAC7D,MAAM,MAAM,GAAG,wBAAwB,CAAC,OAAO,CAAC,CAAC;IAEjD,oDAAoD;IACpD,uBAAuB,CAAC,MAAM,CAAC,CAAC;IAEhC,MAAM,CAAC,IAAI,CACT,gDAAgD,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,aAAa,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,6CAA6C,CACzJ,CAAC;IAEF,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,UAAU;IACxB,OAAO,wBAAwB,EAAE,CAAC;AACpC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CAAC,OAAoB;IACxD,OAAO,wBAAwB,CAAC,OAAO,CAAC,CAAC;AAC3C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe;IAC7B,OAAO,SAAS,EAAE,CAAC;AACrB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB;IACjC,OAAO,cAAc,EAAE,CAAC;AAC1B,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,WAAW;IACzB,qBAAqB,EAAE,CAAC;AAC1B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/config/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAkBA,4CAWC;AAMD,0CAKC;AAKD,kDAEC;AAMD,kCAMC;AA3DD,oDAAoD;AACpD,2CAAyB;AACzB,2CAAyB;AACzB,0CAAwB;AACxB,gDAA8B;AAE9B,sCAAsC;AACtC,qCAAsC;AAEtC,mCAAoC;AAEpC,gCAAgC;AAChC,IAAI,YAAY,GAAqB,IAAI,CAAC;AAE1C;;;GAGG;AACH,SAAgB,gBAAgB;IAC9B,IAAI,YAAY,EAAE,CAAC;QACjB,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,YAAY,GAAG,IAAA,mBAAU,GAAE,CAAC;IAE5B,0CAA0C;IAC1C,IAAA,iBAAS,EAAC,YAAY,CAAC,CAAC;IAExB,OAAO,YAAY,CAAC;AACtB,CAAC;AAED;;;GAGG;AACH,SAAgB,eAAe;IAC7B,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAC;IACnF,CAAC;IACD,OAAO,YAAY,CAAC;AACtB,CAAC;AAED;;GAEG;AACH,SAAgB,mBAAmB;IACjC,OAAO,YAAY,KAAK,IAAI,CAAC;AAC/B,CAAC;AAED;;;GAGG;AACH,SAAgB,WAAW;IACzB,YAAY,GAAG,IAAI,CAAC;IAEpB,wEAAwE;IACxE,MAAM,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;IACzC,SAAS,CAAC,IAAW,CAAC,CAAC;AACzB,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { AppConfig } from './schema';
2
+ /**
3
+ * Load and validate configuration from config files and environment variables
4
+ * Priority: Environment Variables > Config File > Schema Defaults
5
+ * @returns Validated and typed application configuration
6
+ */
7
+ export declare function loadConfig(): AppConfig;