@warlock.js/core 4.0.30 → 4.0.39

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 (703) hide show
  1. package/esm/cli/index.js +2 -1
  2. package/esm/cli/index.js.map +1 -1
  3. package/esm/cli/start.js +132 -2
  4. package/esm/cli/start.js.map +1 -1
  5. package/esm/index.js +72 -1
  6. package/esm/index.js.map +1 -1
  7. package/package.json +71 -65
  8. package/esm/application.d.ts +0 -27
  9. package/esm/application.d.ts.map +0 -1
  10. package/esm/bootstrap/setup.d.ts +0 -7
  11. package/esm/bootstrap/setup.d.ts.map +0 -1
  12. package/esm/bootstrap/setup.js +0 -38
  13. package/esm/bootstrap/setup.js.map +0 -1
  14. package/esm/bootstrap.d.ts +0 -2
  15. package/esm/bootstrap.d.ts.map +0 -1
  16. package/esm/bootstrap.js +0 -5
  17. package/esm/bootstrap.js.map +0 -1
  18. package/esm/cache/database-cache-driver.d.ts +0 -56
  19. package/esm/cache/database-cache-driver.d.ts.map +0 -1
  20. package/esm/cache/database-cache-driver.js +0 -96
  21. package/esm/cache/database-cache-driver.js.map +0 -1
  22. package/esm/cache/index.d.ts +0 -3
  23. package/esm/cache/index.d.ts.map +0 -1
  24. package/esm/cache/index.js +0 -1
  25. package/esm/cache/index.js.map +0 -1
  26. package/esm/cli/cli-command.d.ts +0 -115
  27. package/esm/cli/cli-command.d.ts.map +0 -1
  28. package/esm/cli/cli-command.js +0 -224
  29. package/esm/cli/cli-command.js.map +0 -1
  30. package/esm/cli/cli-commands.manager.d.ts +0 -71
  31. package/esm/cli/cli-commands.manager.d.ts.map +0 -1
  32. package/esm/cli/cli-commands.manager.js +0 -345
  33. package/esm/cli/cli-commands.manager.js.map +0 -1
  34. package/esm/cli/cli-commands.utils.d.ts +0 -68
  35. package/esm/cli/cli-commands.utils.d.ts.map +0 -1
  36. package/esm/cli/cli-commands.utils.js +0 -182
  37. package/esm/cli/cli-commands.utils.js.map +0 -1
  38. package/esm/cli/commands/build.command.d.ts +0 -2
  39. package/esm/cli/commands/build.command.d.ts.map +0 -1
  40. package/esm/cli/commands/build.command.js +0 -8
  41. package/esm/cli/commands/build.command.js.map +0 -1
  42. package/esm/cli/commands/dev-server.command.d.ts +0 -2
  43. package/esm/cli/commands/dev-server.command.d.ts.map +0 -1
  44. package/esm/cli/commands/dev-server.command.js +0 -16
  45. package/esm/cli/commands/dev-server.command.js.map +0 -1
  46. package/esm/cli/commands/start-production.command.d.ts +0 -2
  47. package/esm/cli/commands/start-production.command.d.ts.map +0 -1
  48. package/esm/cli/commands/start-production.command.js +0 -65
  49. package/esm/cli/commands/start-production.command.js.map +0 -1
  50. package/esm/cli/commands/typings-generator.command.d.ts +0 -2
  51. package/esm/cli/commands/typings-generator.command.d.ts.map +0 -1
  52. package/esm/cli/commands/typings-generator.command.js +0 -40
  53. package/esm/cli/commands/typings-generator.command.js.map +0 -1
  54. package/esm/cli/commands-loader.d.ts +0 -18
  55. package/esm/cli/commands-loader.d.ts.map +0 -1
  56. package/esm/cli/commands-loader.js +0 -45
  57. package/esm/cli/commands-loader.js.map +0 -1
  58. package/esm/cli/framework-cli-commands.d.ts +0 -2
  59. package/esm/cli/framework-cli-commands.d.ts.map +0 -1
  60. package/esm/cli/framework-cli-commands.js +0 -6
  61. package/esm/cli/framework-cli-commands.js.map +0 -1
  62. package/esm/cli/index.d.ts +0 -3
  63. package/esm/cli/index.d.ts.map +0 -1
  64. package/esm/cli/parse-cli-args.d.ts +0 -18
  65. package/esm/cli/parse-cli-args.d.ts.map +0 -1
  66. package/esm/cli/parse-cli-args.js +0 -82
  67. package/esm/cli/parse-cli-args.js.map +0 -1
  68. package/esm/cli/start.d.ts +0 -2
  69. package/esm/cli/start.d.ts.map +0 -1
  70. package/esm/cli/string-similarity.d.ts +0 -44
  71. package/esm/cli/string-similarity.d.ts.map +0 -1
  72. package/esm/cli/string-similarity.js +0 -57
  73. package/esm/cli/string-similarity.js.map +0 -1
  74. package/esm/cli/types.d.ts +0 -201
  75. package/esm/cli/types.d.ts.map +0 -1
  76. package/esm/config/config-getter.d.ts +0 -35
  77. package/esm/config/config-getter.d.ts.map +0 -1
  78. package/esm/config/config-getter.js +0 -21
  79. package/esm/config/config-getter.js.map +0 -1
  80. package/esm/config/config-handlers.d.ts +0 -19
  81. package/esm/config/config-handlers.d.ts.map +0 -1
  82. package/esm/config/config-handlers.js +0 -47
  83. package/esm/config/config-handlers.js.map +0 -1
  84. package/esm/config/config-loader.d.ts +0 -37
  85. package/esm/config/config-loader.d.ts.map +0 -1
  86. package/esm/config/config-loader.js +0 -83
  87. package/esm/config/config-loader.js.map +0 -1
  88. package/esm/config/config-manager.d.ts +0 -22
  89. package/esm/config/config-manager.d.ts.map +0 -1
  90. package/esm/config/config-manager.js +0 -25
  91. package/esm/config/config-manager.js.map +0 -1
  92. package/esm/config/config-special-handlers.d.ts +0 -17
  93. package/esm/config/config-special-handlers.d.ts.map +0 -1
  94. package/esm/config/config-special-handlers.js +0 -23
  95. package/esm/config/config-special-handlers.js.map +0 -1
  96. package/esm/config/index.d.ts +0 -5
  97. package/esm/config/index.d.ts.map +0 -1
  98. package/esm/config/load-config-files.d.ts +0 -6
  99. package/esm/config/load-config-files.d.ts.map +0 -1
  100. package/esm/config/load-config-files.js +0 -19
  101. package/esm/config/load-config-files.js.map +0 -1
  102. package/esm/config/types.d.ts +0 -52
  103. package/esm/config/types.d.ts.map +0 -1
  104. package/esm/database/decorators/index.d.ts +0 -2
  105. package/esm/database/decorators/index.d.ts.map +0 -1
  106. package/esm/database/decorators/sluggable.d.ts +0 -2
  107. package/esm/database/decorators/sluggable.d.ts.map +0 -1
  108. package/esm/database/decorators/sluggable.js +0 -8
  109. package/esm/database/decorators/sluggable.js.map +0 -1
  110. package/esm/database/index.d.ts +0 -3
  111. package/esm/database/index.d.ts.map +0 -1
  112. package/esm/database/models/database-log/database-log.d.ts +0 -13
  113. package/esm/database/models/database-log/database-log.d.ts.map +0 -1
  114. package/esm/database/models/database-log/database-log.js +0 -16
  115. package/esm/database/models/database-log/database-log.js.map +0 -1
  116. package/esm/database/models/database-log/index.d.ts +0 -2
  117. package/esm/database/models/database-log/index.d.ts.map +0 -1
  118. package/esm/dev2-server/config-handlers.d.ts +0 -8
  119. package/esm/dev2-server/config-handlers.d.ts.map +0 -1
  120. package/esm/dev2-server/config-loader.d.ts +0 -61
  121. package/esm/dev2-server/config-loader.d.ts.map +0 -1
  122. package/esm/dev2-server/connectors/base-connector.d.ts +0 -49
  123. package/esm/dev2-server/connectors/base-connector.d.ts.map +0 -1
  124. package/esm/dev2-server/connectors/base-connector.js +0 -48
  125. package/esm/dev2-server/connectors/base-connector.js.map +0 -1
  126. package/esm/dev2-server/connectors/cache-connector.d.ts +0 -23
  127. package/esm/dev2-server/connectors/cache-connector.d.ts.map +0 -1
  128. package/esm/dev2-server/connectors/cache-connector.js +0 -35
  129. package/esm/dev2-server/connectors/cache-connector.js.map +0 -1
  130. package/esm/dev2-server/connectors/connectors-manager.d.ts +0 -38
  131. package/esm/dev2-server/connectors/connectors-manager.d.ts.map +0 -1
  132. package/esm/dev2-server/connectors/connectors-manager.js +0 -80
  133. package/esm/dev2-server/connectors/connectors-manager.js.map +0 -1
  134. package/esm/dev2-server/connectors/database-connector.d.ts +0 -23
  135. package/esm/dev2-server/connectors/database-connector.d.ts.map +0 -1
  136. package/esm/dev2-server/connectors/database-connector.js +0 -42
  137. package/esm/dev2-server/connectors/database-connector.js.map +0 -1
  138. package/esm/dev2-server/connectors/http-connector.d.ts +0 -29
  139. package/esm/dev2-server/connectors/http-connector.d.ts.map +0 -1
  140. package/esm/dev2-server/connectors/http-connector.js +0 -69
  141. package/esm/dev2-server/connectors/http-connector.js.map +0 -1
  142. package/esm/dev2-server/connectors/index.d.ts +0 -11
  143. package/esm/dev2-server/connectors/index.d.ts.map +0 -1
  144. package/esm/dev2-server/connectors/types.d.ts +0 -49
  145. package/esm/dev2-server/connectors/types.d.ts.map +0 -1
  146. package/esm/dev2-server/connectors/types.js +0 -9
  147. package/esm/dev2-server/connectors/types.js.map +0 -1
  148. package/esm/dev2-server/create-worker.d.ts +0 -34
  149. package/esm/dev2-server/create-worker.d.ts.map +0 -1
  150. package/esm/dev2-server/create-worker.js +0 -37
  151. package/esm/dev2-server/create-worker.js.map +0 -1
  152. package/esm/dev2-server/dependency-graph.d.ts +0 -93
  153. package/esm/dev2-server/dependency-graph.d.ts.map +0 -1
  154. package/esm/dev2-server/dependency-graph.js +0 -266
  155. package/esm/dev2-server/dependency-graph.js.map +0 -1
  156. package/esm/dev2-server/dev-logger.d.ts +0 -14
  157. package/esm/dev2-server/dev-logger.d.ts.map +0 -1
  158. package/esm/dev2-server/dev-logger.js +0 -130
  159. package/esm/dev2-server/dev-logger.js.map +0 -1
  160. package/esm/dev2-server/development-server.d.ts +0 -47
  161. package/esm/dev2-server/development-server.d.ts.map +0 -1
  162. package/esm/dev2-server/development-server.js +0 -135
  163. package/esm/dev2-server/development-server.js.map +0 -1
  164. package/esm/dev2-server/events.d.ts +0 -5
  165. package/esm/dev2-server/events.d.ts.map +0 -1
  166. package/esm/dev2-server/events.js +0 -4
  167. package/esm/dev2-server/events.js.map +0 -1
  168. package/esm/dev2-server/file-event-handler.d.ts +0 -156
  169. package/esm/dev2-server/file-event-handler.d.ts.map +0 -1
  170. package/esm/dev2-server/file-event-handler.js +0 -300
  171. package/esm/dev2-server/file-event-handler.js.map +0 -1
  172. package/esm/dev2-server/file-manager.d.ts +0 -385
  173. package/esm/dev2-server/file-manager.d.ts.map +0 -1
  174. package/esm/dev2-server/file-manager.js +0 -580
  175. package/esm/dev2-server/file-manager.js.map +0 -1
  176. package/esm/dev2-server/file-operations.d.ts +0 -203
  177. package/esm/dev2-server/file-operations.d.ts.map +0 -1
  178. package/esm/dev2-server/file-operations.js +0 -365
  179. package/esm/dev2-server/file-operations.js.map +0 -1
  180. package/esm/dev2-server/files-orchestrator.d.ts +0 -146
  181. package/esm/dev2-server/files-orchestrator.d.ts.map +0 -1
  182. package/esm/dev2-server/files-orchestrator.js +0 -314
  183. package/esm/dev2-server/files-orchestrator.js.map +0 -1
  184. package/esm/dev2-server/files-watcher.d.ts +0 -67
  185. package/esm/dev2-server/files-watcher.d.ts.map +0 -1
  186. package/esm/dev2-server/files-watcher.js +0 -95
  187. package/esm/dev2-server/files-watcher.js.map +0 -1
  188. package/esm/dev2-server/flags.d.ts +0 -10
  189. package/esm/dev2-server/flags.d.ts.map +0 -1
  190. package/esm/dev2-server/flags.js +0 -9
  191. package/esm/dev2-server/flags.js.map +0 -1
  192. package/esm/dev2-server/health-checker/checkers/base-health-checker.d.ts +0 -52
  193. package/esm/dev2-server/health-checker/checkers/base-health-checker.d.ts.map +0 -1
  194. package/esm/dev2-server/health-checker/checkers/base-health-checker.js +0 -71
  195. package/esm/dev2-server/health-checker/checkers/base-health-checker.js.map +0 -1
  196. package/esm/dev2-server/health-checker/checkers/eslint-health-checker.d.ts +0 -40
  197. package/esm/dev2-server/health-checker/checkers/eslint-health-checker.d.ts.map +0 -1
  198. package/esm/dev2-server/health-checker/checkers/eslint-health-checker.js +0 -217
  199. package/esm/dev2-server/health-checker/checkers/eslint-health-checker.js.map +0 -1
  200. package/esm/dev2-server/health-checker/checkers/typescript-health-checker.d.ts +0 -56
  201. package/esm/dev2-server/health-checker/checkers/typescript-health-checker.d.ts.map +0 -1
  202. package/esm/dev2-server/health-checker/checkers/typescript-health-checker.js +0 -279
  203. package/esm/dev2-server/health-checker/checkers/typescript-health-checker.js.map +0 -1
  204. package/esm/dev2-server/health-checker/file-health-checker.contract.d.ts +0 -59
  205. package/esm/dev2-server/health-checker/file-health-checker.contract.d.ts.map +0 -1
  206. package/esm/dev2-server/health-checker/file-health-result.d.ts +0 -68
  207. package/esm/dev2-server/health-checker/file-health-result.d.ts.map +0 -1
  208. package/esm/dev2-server/health-checker/file-health-result.js +0 -40
  209. package/esm/dev2-server/health-checker/file-health-result.js.map +0 -1
  210. package/esm/dev2-server/health-checker/files-healthcare.manager.d.ts +0 -115
  211. package/esm/dev2-server/health-checker/files-healthcare.manager.d.ts.map +0 -1
  212. package/esm/dev2-server/health-checker/files-healthcare.manager.js +0 -422
  213. package/esm/dev2-server/health-checker/files-healthcare.manager.js.map +0 -1
  214. package/esm/dev2-server/health-checker/index.d.ts +0 -6
  215. package/esm/dev2-server/health-checker/index.d.ts.map +0 -1
  216. package/esm/dev2-server/health-checker/workers/eslint-health.worker.d.ts +0 -2
  217. package/esm/dev2-server/health-checker/workers/eslint-health.worker.d.ts.map +0 -1
  218. package/esm/dev2-server/health-checker/workers/eslint-health.worker.js +0 -214
  219. package/esm/dev2-server/health-checker/workers/eslint-health.worker.js.map +0 -1
  220. package/esm/dev2-server/health-checker/workers/ts-health.worker.d.ts +0 -2
  221. package/esm/dev2-server/health-checker/workers/ts-health.worker.d.ts.map +0 -1
  222. package/esm/dev2-server/health-checker/workers/ts-health.worker.js +0 -261
  223. package/esm/dev2-server/health-checker/workers/ts-health.worker.js.map +0 -1
  224. package/esm/dev2-server/import-transformer.d.ts +0 -17
  225. package/esm/dev2-server/import-transformer.d.ts.map +0 -1
  226. package/esm/dev2-server/import-transformer.js +0 -236
  227. package/esm/dev2-server/import-transformer.js.map +0 -1
  228. package/esm/dev2-server/index.d.ts +0 -1
  229. package/esm/dev2-server/index.d.ts.map +0 -1
  230. package/esm/dev2-server/layer-executor.d.ts +0 -60
  231. package/esm/dev2-server/layer-executor.d.ts.map +0 -1
  232. package/esm/dev2-server/layer-executor.js +0 -309
  233. package/esm/dev2-server/layer-executor.js.map +0 -1
  234. package/esm/dev2-server/manifest-manager.d.ts +0 -80
  235. package/esm/dev2-server/manifest-manager.d.ts.map +0 -1
  236. package/esm/dev2-server/manifest-manager.js +0 -107
  237. package/esm/dev2-server/manifest-manager.js.map +0 -1
  238. package/esm/dev2-server/module-loader.d.ts +0 -104
  239. package/esm/dev2-server/module-loader.d.ts.map +0 -1
  240. package/esm/dev2-server/module-loader.js +0 -251
  241. package/esm/dev2-server/module-loader.js.map +0 -1
  242. package/esm/dev2-server/package-json-manager.d.ts +0 -16
  243. package/esm/dev2-server/package-json-manager.d.ts.map +0 -1
  244. package/esm/dev2-server/package-json-manager.js +0 -20
  245. package/esm/dev2-server/package-json-manager.js.map +0 -1
  246. package/esm/dev2-server/parse-imports.d.ts +0 -13
  247. package/esm/dev2-server/parse-imports.d.ts.map +0 -1
  248. package/esm/dev2-server/parse-imports.js +0 -329
  249. package/esm/dev2-server/parse-imports.js.map +0 -1
  250. package/esm/dev2-server/path.d.ts +0 -39
  251. package/esm/dev2-server/path.d.ts.map +0 -1
  252. package/esm/dev2-server/path.js +0 -56
  253. package/esm/dev2-server/path.js.map +0 -1
  254. package/esm/dev2-server/runtime-import-helper.d.ts +0 -9
  255. package/esm/dev2-server/runtime-import-helper.d.ts.map +0 -1
  256. package/esm/dev2-server/runtime-import-helper.js +0 -150
  257. package/esm/dev2-server/runtime-import-helper.js.map +0 -1
  258. package/esm/dev2-server/special-files-collector.d.ts +0 -114
  259. package/esm/dev2-server/special-files-collector.d.ts.map +0 -1
  260. package/esm/dev2-server/special-files-collector.js +0 -212
  261. package/esm/dev2-server/special-files-collector.js.map +0 -1
  262. package/esm/dev2-server/start-development-server.d.ts +0 -7
  263. package/esm/dev2-server/start-development-server.d.ts.map +0 -1
  264. package/esm/dev2-server/start-development-server.js +0 -21
  265. package/esm/dev2-server/start-development-server.js.map +0 -1
  266. package/esm/dev2-server/transpile-file.d.ts +0 -11
  267. package/esm/dev2-server/transpile-file.d.ts.map +0 -1
  268. package/esm/dev2-server/transpile-file.js +0 -21
  269. package/esm/dev2-server/transpile-file.js.map +0 -1
  270. package/esm/dev2-server/tsconfig-manager.d.ts +0 -45
  271. package/esm/dev2-server/tsconfig-manager.d.ts.map +0 -1
  272. package/esm/dev2-server/tsconfig-manager.js +0 -107
  273. package/esm/dev2-server/tsconfig-manager.js.map +0 -1
  274. package/esm/dev2-server/type-generator.d.ts +0 -115
  275. package/esm/dev2-server/type-generator.d.ts.map +0 -1
  276. package/esm/dev2-server/type-generator.js +0 -566
  277. package/esm/dev2-server/type-generator.js.map +0 -1
  278. package/esm/dev2-server/types.d.ts +0 -30
  279. package/esm/dev2-server/types.d.ts.map +0 -1
  280. package/esm/dev2-server/utils.d.ts +0 -15
  281. package/esm/dev2-server/utils.d.ts.map +0 -1
  282. package/esm/dev2-server/utils.js +0 -40
  283. package/esm/dev2-server/utils.js.map +0 -1
  284. package/esm/http/config.d.ts +0 -10
  285. package/esm/http/config.d.ts.map +0 -1
  286. package/esm/http/config.js +0 -22
  287. package/esm/http/config.js.map +0 -1
  288. package/esm/http/createHttpApplication.d.ts +0 -3
  289. package/esm/http/createHttpApplication.d.ts.map +0 -1
  290. package/esm/http/createHttpApplication.js +0 -28
  291. package/esm/http/createHttpApplication.js.map +0 -1
  292. package/esm/http/database/RequestLog.d.ts +0 -13
  293. package/esm/http/database/RequestLog.d.ts.map +0 -1
  294. package/esm/http/database/RequestLog.js +0 -25
  295. package/esm/http/database/RequestLog.js.map +0 -1
  296. package/esm/http/errors/index.d.ts +0 -2
  297. package/esm/http/errors/index.d.ts.map +0 -1
  298. package/esm/http/errors/resource-not-found.error.d.ts +0 -21
  299. package/esm/http/errors/resource-not-found.error.d.ts.map +0 -1
  300. package/esm/http/errors/resource-not-found.error.js +0 -40
  301. package/esm/http/errors/resource-not-found.error.js.map +0 -1
  302. package/esm/http/events.d.ts +0 -4
  303. package/esm/http/events.d.ts.map +0 -1
  304. package/esm/http/events.js +0 -26
  305. package/esm/http/events.js.map +0 -1
  306. package/esm/http/index.d.ts +0 -16
  307. package/esm/http/index.d.ts.map +0 -1
  308. package/esm/http/middleware/cache-response-middleware.d.ts +0 -34
  309. package/esm/http/middleware/cache-response-middleware.d.ts.map +0 -1
  310. package/esm/http/middleware/cache-response-middleware.js +0 -45
  311. package/esm/http/middleware/cache-response-middleware.js.map +0 -1
  312. package/esm/http/middleware/index.d.ts +0 -3
  313. package/esm/http/middleware/index.d.ts.map +0 -1
  314. package/esm/http/middleware/inject-request-context.d.ts +0 -35
  315. package/esm/http/middleware/inject-request-context.d.ts.map +0 -1
  316. package/esm/http/middleware/inject-request-context.js +0 -110
  317. package/esm/http/middleware/inject-request-context.js.map +0 -1
  318. package/esm/http/plugins/index.d.ts +0 -3
  319. package/esm/http/plugins/index.d.ts.map +0 -1
  320. package/esm/http/plugins.d.ts +0 -3
  321. package/esm/http/plugins.d.ts.map +0 -1
  322. package/esm/http/plugins.js +0 -39
  323. package/esm/http/plugins.js.map +0 -1
  324. package/esm/http/request-controller.d.ts +0 -11
  325. package/esm/http/request-controller.d.ts.map +0 -1
  326. package/esm/http/request-controller.js +0 -9
  327. package/esm/http/request-controller.js.map +0 -1
  328. package/esm/http/request.d.ts +0 -376
  329. package/esm/http/request.d.ts.map +0 -1
  330. package/esm/http/request.js +0 -729
  331. package/esm/http/request.js.map +0 -1
  332. package/esm/http/response.d.ts +0 -271
  333. package/esm/http/response.d.ts.map +0 -1
  334. package/esm/http/response.js +0 -574
  335. package/esm/http/response.js.map +0 -1
  336. package/esm/http/server.d.ts +0 -8
  337. package/esm/http/server.d.ts.map +0 -1
  338. package/esm/http/server.js +0 -15
  339. package/esm/http/server.js.map +0 -1
  340. package/esm/http/types.d.ts +0 -174
  341. package/esm/http/types.d.ts.map +0 -1
  342. package/esm/http/uploaded-file.d.ts +0 -445
  343. package/esm/http/uploaded-file.d.ts.map +0 -1
  344. package/esm/http/uploaded-file.js +0 -694
  345. package/esm/http/uploaded-file.js.map +0 -1
  346. package/esm/http/uploads-config.d.ts +0 -26
  347. package/esm/http/uploads-config.d.ts.map +0 -1
  348. package/esm/http/uploads-config.js +0 -35
  349. package/esm/http/uploads-config.js.map +0 -1
  350. package/esm/http/uploads-types.d.ts +0 -236
  351. package/esm/http/uploads-types.d.ts.map +0 -1
  352. package/esm/image/image.d.ts +0 -382
  353. package/esm/image/image.d.ts.map +0 -1
  354. package/esm/image/image.js +0 -552
  355. package/esm/image/image.js.map +0 -1
  356. package/esm/image/index.d.ts +0 -2
  357. package/esm/image/index.d.ts.map +0 -1
  358. package/esm/index.d.ts +0 -29
  359. package/esm/index.d.ts.map +0 -1
  360. package/esm/logger/index.d.ts +0 -3
  361. package/esm/logger/index.d.ts.map +0 -1
  362. package/esm/logger/logger.d.ts +0 -3
  363. package/esm/logger/logger.d.ts.map +0 -1
  364. package/esm/logger/logger.js +0 -16
  365. package/esm/logger/logger.js.map +0 -1
  366. package/esm/logger/types.d.ts +0 -39
  367. package/esm/logger/types.d.ts.map +0 -1
  368. package/esm/mail/config.d.ts +0 -83
  369. package/esm/mail/config.d.ts.map +0 -1
  370. package/esm/mail/config.js +0 -152
  371. package/esm/mail/config.js.map +0 -1
  372. package/esm/mail/events.d.ts +0 -96
  373. package/esm/mail/events.d.ts.map +0 -1
  374. package/esm/mail/events.js +0 -123
  375. package/esm/mail/events.js.map +0 -1
  376. package/esm/mail/index.d.ts +0 -10
  377. package/esm/mail/index.d.ts.map +0 -1
  378. package/esm/mail/mail.d.ts +0 -175
  379. package/esm/mail/mail.d.ts.map +0 -1
  380. package/esm/mail/mail.js +0 -286
  381. package/esm/mail/mail.js.map +0 -1
  382. package/esm/mail/mailer-pool.d.ts +0 -26
  383. package/esm/mail/mailer-pool.d.ts.map +0 -1
  384. package/esm/mail/mailer-pool.js +0 -95
  385. package/esm/mail/mailer-pool.js.map +0 -1
  386. package/esm/mail/react-mail.d.ts +0 -6
  387. package/esm/mail/react-mail.d.ts.map +0 -1
  388. package/esm/mail/react-mail.js +0 -25
  389. package/esm/mail/react-mail.js.map +0 -1
  390. package/esm/mail/send-mail.d.ts +0 -33
  391. package/esm/mail/send-mail.d.ts.map +0 -1
  392. package/esm/mail/send-mail.js +0 -309
  393. package/esm/mail/send-mail.js.map +0 -1
  394. package/esm/mail/test-mailbox.d.ts +0 -110
  395. package/esm/mail/test-mailbox.d.ts.map +0 -1
  396. package/esm/mail/test-mailbox.js +0 -143
  397. package/esm/mail/test-mailbox.js.map +0 -1
  398. package/esm/mail/types.d.ts +0 -245
  399. package/esm/mail/types.d.ts.map +0 -1
  400. package/esm/mail/types.js +0 -13
  401. package/esm/mail/types.js.map +0 -1
  402. package/esm/manifest/manifest-manager.d.ts +0 -74
  403. package/esm/manifest/manifest-manager.d.ts.map +0 -1
  404. package/esm/manifest/manifest-manager.js +0 -88
  405. package/esm/manifest/manifest-manager.js.map +0 -1
  406. package/esm/output/index.d.ts +0 -3
  407. package/esm/output/index.d.ts.map +0 -1
  408. package/esm/output/output.d.ts +0 -193
  409. package/esm/output/output.d.ts.map +0 -1
  410. package/esm/output/output.js +0 -599
  411. package/esm/output/output.js.map +0 -1
  412. package/esm/output/types.d.ts +0 -23
  413. package/esm/output/types.d.ts.map +0 -1
  414. package/esm/production/build-app-production.d.ts +0 -6
  415. package/esm/production/build-app-production.d.ts.map +0 -1
  416. package/esm/production/build-app-production.js +0 -8
  417. package/esm/production/build-app-production.js.map +0 -1
  418. package/esm/production/esbuild-plugins.d.ts +0 -5
  419. package/esm/production/esbuild-plugins.d.ts.map +0 -1
  420. package/esm/production/esbuild-plugins.js +0 -23
  421. package/esm/production/esbuild-plugins.js.map +0 -1
  422. package/esm/production/production-builder.d.ts +0 -76
  423. package/esm/production/production-builder.d.ts.map +0 -1
  424. package/esm/production/production-builder.js +0 -245
  425. package/esm/production/production-builder.js.map +0 -1
  426. package/esm/react/index.d.ts +0 -3
  427. package/esm/react/index.d.ts.map +0 -1
  428. package/esm/react/index.js +0 -7
  429. package/esm/react/index.js.map +0 -1
  430. package/esm/repositories/base-repository-manager.d.ts +0 -47
  431. package/esm/repositories/base-repository-manager.d.ts.map +0 -1
  432. package/esm/repositories/base-repository-manager.js +0 -63
  433. package/esm/repositories/base-repository-manager.js.map +0 -1
  434. package/esm/repositories/index.d.ts +0 -8
  435. package/esm/repositories/index.d.ts.map +0 -1
  436. package/esm/repositories/repository-destroyer-manager.d.ts +0 -21
  437. package/esm/repositories/repository-destroyer-manager.d.ts.map +0 -1
  438. package/esm/repositories/repository-destroyer-manager.js +0 -38
  439. package/esm/repositories/repository-destroyer-manager.js.map +0 -1
  440. package/esm/repositories/repository-filler-manager.d.ts +0 -60
  441. package/esm/repositories/repository-filler-manager.d.ts.map +0 -1
  442. package/esm/repositories/repository-filler-manager.js +0 -102
  443. package/esm/repositories/repository-filler-manager.js.map +0 -1
  444. package/esm/repositories/repository-filler.d.ts +0 -26
  445. package/esm/repositories/repository-filler.d.ts.map +0 -1
  446. package/esm/repositories/repository-filler.js +0 -63
  447. package/esm/repositories/repository-filler.js.map +0 -1
  448. package/esm/repositories/repository-list-manager.d.ts +0 -385
  449. package/esm/repositories/repository-list-manager.d.ts.map +0 -1
  450. package/esm/repositories/repository-list-manager.js +0 -812
  451. package/esm/repositories/repository-list-manager.js.map +0 -1
  452. package/esm/repositories/repository-listing.d.ts +0 -82
  453. package/esm/repositories/repository-listing.d.ts.map +0 -1
  454. package/esm/repositories/repository-listing.js +0 -177
  455. package/esm/repositories/repository-listing.js.map +0 -1
  456. package/esm/repositories/repository-manager.d.ts +0 -5
  457. package/esm/repositories/repository-manager.d.ts.map +0 -1
  458. package/esm/repositories/repository-manager.js +0 -2
  459. package/esm/repositories/repository-manager.js.map +0 -1
  460. package/esm/repositories/types.d.ts +0 -114
  461. package/esm/repositories/types.d.ts.map +0 -1
  462. package/esm/repositories/utils.d.ts +0 -3
  463. package/esm/repositories/utils.d.ts.map +0 -1
  464. package/esm/repositories/utils.js +0 -7
  465. package/esm/repositories/utils.js.map +0 -1
  466. package/esm/restful/index.d.ts +0 -2
  467. package/esm/restful/index.d.ts.map +0 -1
  468. package/esm/restful/restful.d.ts +0 -110
  469. package/esm/restful/restful.d.ts.map +0 -1
  470. package/esm/restful/restful.js +0 -317
  471. package/esm/restful/restful.js.map +0 -1
  472. package/esm/router/index.d.ts +0 -4
  473. package/esm/router/index.d.ts.map +0 -1
  474. package/esm/router/route-registry.d.ts +0 -30
  475. package/esm/router/route-registry.d.ts.map +0 -1
  476. package/esm/router/route-registry.js +0 -67
  477. package/esm/router/route-registry.js.map +0 -1
  478. package/esm/router/route.d.ts +0 -34
  479. package/esm/router/route.d.ts.map +0 -1
  480. package/esm/router/router.d.ts +0 -169
  481. package/esm/router/router.d.ts.map +0 -1
  482. package/esm/router/router.js +0 -564
  483. package/esm/router/router.js.map +0 -1
  484. package/esm/router/types.d.ts +0 -258
  485. package/esm/router/types.d.ts.map +0 -1
  486. package/esm/router/utils.d.ts +0 -5
  487. package/esm/router/utils.d.ts.map +0 -1
  488. package/esm/router/utils.js +0 -6
  489. package/esm/router/utils.js.map +0 -1
  490. package/esm/storage/config.d.ts +0 -8
  491. package/esm/storage/config.d.ts.map +0 -1
  492. package/esm/storage/config.js +0 -6
  493. package/esm/storage/config.js.map +0 -1
  494. package/esm/storage/drivers/cloud-driver.d.ts +0 -127
  495. package/esm/storage/drivers/cloud-driver.d.ts.map +0 -1
  496. package/esm/storage/drivers/cloud-driver.js +0 -406
  497. package/esm/storage/drivers/cloud-driver.js.map +0 -1
  498. package/esm/storage/drivers/do-spaces-driver.d.ts +0 -47
  499. package/esm/storage/drivers/do-spaces-driver.d.ts.map +0 -1
  500. package/esm/storage/drivers/do-spaces-driver.js +0 -52
  501. package/esm/storage/drivers/do-spaces-driver.js.map +0 -1
  502. package/esm/storage/drivers/local-driver.d.ts +0 -136
  503. package/esm/storage/drivers/local-driver.d.ts.map +0 -1
  504. package/esm/storage/drivers/local-driver.js +0 -409
  505. package/esm/storage/drivers/local-driver.js.map +0 -1
  506. package/esm/storage/drivers/r2-driver.d.ts +0 -50
  507. package/esm/storage/drivers/r2-driver.d.ts.map +0 -1
  508. package/esm/storage/drivers/r2-driver.js +0 -59
  509. package/esm/storage/drivers/r2-driver.js.map +0 -1
  510. package/esm/storage/drivers/s3-driver.d.ts +0 -32
  511. package/esm/storage/drivers/s3-driver.d.ts.map +0 -1
  512. package/esm/storage/drivers/s3-driver.js +0 -34
  513. package/esm/storage/drivers/s3-driver.js.map +0 -1
  514. package/esm/storage/index.d.ts +0 -12
  515. package/esm/storage/index.d.ts.map +0 -1
  516. package/esm/storage/scoped-storage.d.ts +0 -402
  517. package/esm/storage/scoped-storage.d.ts.map +0 -1
  518. package/esm/storage/scoped-storage.js +0 -488
  519. package/esm/storage/scoped-storage.js.map +0 -1
  520. package/esm/storage/storage-file.d.ts +0 -216
  521. package/esm/storage/storage-file.d.ts.map +0 -1
  522. package/esm/storage/storage-file.js +0 -358
  523. package/esm/storage/storage-file.js.map +0 -1
  524. package/esm/storage/storage.d.ts +0 -582
  525. package/esm/storage/storage.d.ts.map +0 -1
  526. package/esm/storage/storage.js +0 -941
  527. package/esm/storage/storage.js.map +0 -1
  528. package/esm/storage/types.d.ts +0 -728
  529. package/esm/storage/types.d.ts.map +0 -1
  530. package/esm/storage/utils/mime.d.ts +0 -33
  531. package/esm/storage/utils/mime.d.ts.map +0 -1
  532. package/esm/storage/utils/mime.js +0 -45
  533. package/esm/storage/utils/mime.js.map +0 -1
  534. package/esm/store/index.d.ts +0 -25
  535. package/esm/store/index.d.ts.map +0 -1
  536. package/esm/store/index.js +0 -52
  537. package/esm/store/index.js.map +0 -1
  538. package/esm/tests/boot-testing.d.ts +0 -7
  539. package/esm/tests/boot-testing.d.ts.map +0 -1
  540. package/esm/tests/boot-testing.js +0 -23
  541. package/esm/tests/boot-testing.js.map +0 -1
  542. package/esm/tests/create-http-test-application.d.ts +0 -25
  543. package/esm/tests/create-http-test-application.d.ts.map +0 -1
  544. package/esm/tests/create-http-test-application.js +0 -76
  545. package/esm/tests/create-http-test-application.js.map +0 -1
  546. package/esm/tests/http-response-output-test.d.ts +0 -42
  547. package/esm/tests/http-response-output-test.d.ts.map +0 -1
  548. package/esm/tests/http-response-output-test.js +0 -53
  549. package/esm/tests/http-response-output-test.js.map +0 -1
  550. package/esm/tests/http-test-response.d.ts +0 -75
  551. package/esm/tests/http-test-response.d.ts.map +0 -1
  552. package/esm/tests/index.d.ts +0 -4
  553. package/esm/tests/index.d.ts.map +0 -1
  554. package/esm/tests/init-testing.d.ts +0 -7
  555. package/esm/tests/init-testing.d.ts.map +0 -1
  556. package/esm/tests/types.d.ts +0 -10
  557. package/esm/tests/types.d.ts.map +0 -1
  558. package/esm/utils/app-log.d.ts +0 -8
  559. package/esm/utils/app-log.d.ts.map +0 -1
  560. package/esm/utils/app-log.js +0 -7
  561. package/esm/utils/app-log.js.map +0 -1
  562. package/esm/utils/cleanup-temp-files.d.ts +0 -5
  563. package/esm/utils/cleanup-temp-files.d.ts.map +0 -1
  564. package/esm/utils/database-log.d.ts +0 -25
  565. package/esm/utils/database-log.d.ts.map +0 -1
  566. package/esm/utils/database-log.js +0 -44
  567. package/esm/utils/database-log.js.map +0 -1
  568. package/esm/utils/date-output.d.ts +0 -69
  569. package/esm/utils/date-output.d.ts.map +0 -1
  570. package/esm/utils/date-output.js +0 -62
  571. package/esm/utils/date-output.js.map +0 -1
  572. package/esm/utils/date-output.test.d.ts +0 -2
  573. package/esm/utils/date-output.test.d.ts.map +0 -1
  574. package/esm/utils/download-file.d.ts +0 -3
  575. package/esm/utils/download-file.d.ts.map +0 -1
  576. package/esm/utils/environment.d.ts +0 -4
  577. package/esm/utils/environment.d.ts.map +0 -1
  578. package/esm/utils/environment.js +0 -6
  579. package/esm/utils/environment.js.map +0 -1
  580. package/esm/utils/get-localized.d.ts +0 -10
  581. package/esm/utils/get-localized.d.ts.map +0 -1
  582. package/esm/utils/get-localized.js +0 -15
  583. package/esm/utils/get-localized.js.map +0 -1
  584. package/esm/utils/get-localized.test.d.ts +0 -2
  585. package/esm/utils/get-localized.test.d.ts.map +0 -1
  586. package/esm/utils/index.d.ts +0 -13
  587. package/esm/utils/index.d.ts.map +0 -1
  588. package/esm/utils/internal.d.ts +0 -4
  589. package/esm/utils/internal.d.ts.map +0 -1
  590. package/esm/utils/paths.d.ts +0 -55
  591. package/esm/utils/paths.d.ts.map +0 -1
  592. package/esm/utils/paths.js +0 -89
  593. package/esm/utils/paths.js.map +0 -1
  594. package/esm/utils/promise-all-object.d.ts +0 -8
  595. package/esm/utils/promise-all-object.d.ts.map +0 -1
  596. package/esm/utils/promise-all-object.js +0 -12
  597. package/esm/utils/promise-all-object.js.map +0 -1
  598. package/esm/utils/queue.d.ts +0 -49
  599. package/esm/utils/queue.d.ts.map +0 -1
  600. package/esm/utils/queue.js +0 -89
  601. package/esm/utils/queue.js.map +0 -1
  602. package/esm/utils/sleep.d.ts +0 -2
  603. package/esm/utils/sleep.d.ts.map +0 -1
  604. package/esm/utils/sleep.js +0 -3
  605. package/esm/utils/sleep.js.map +0 -1
  606. package/esm/utils/sluggable.d.ts +0 -5
  607. package/esm/utils/sluggable.d.ts.map +0 -1
  608. package/esm/utils/sluggable.js +0 -15
  609. package/esm/utils/sluggable.js.map +0 -1
  610. package/esm/utils/sluggable.test.d.ts +0 -2
  611. package/esm/utils/sluggable.test.d.ts.map +0 -1
  612. package/esm/utils/to-json.d.ts +0 -2
  613. package/esm/utils/to-json.d.ts.map +0 -1
  614. package/esm/utils/to-json.js +0 -26
  615. package/esm/utils/to-json.js.map +0 -1
  616. package/esm/utils/types.d.ts +0 -22
  617. package/esm/utils/types.d.ts.map +0 -1
  618. package/esm/utils/urls.d.ts +0 -21
  619. package/esm/utils/urls.d.ts.map +0 -1
  620. package/esm/utils/urls.js +0 -31
  621. package/esm/utils/urls.js.map +0 -1
  622. package/esm/validation/database/exists-except-current-id.d.ts +0 -7
  623. package/esm/validation/database/exists-except-current-id.d.ts.map +0 -1
  624. package/esm/validation/database/exists-except-current-id.js +0 -23
  625. package/esm/validation/database/exists-except-current-id.js.map +0 -1
  626. package/esm/validation/database/exists-except-current-user.d.ts +0 -7
  627. package/esm/validation/database/exists-except-current-user.d.ts.map +0 -1
  628. package/esm/validation/database/exists-except-current-user.js +0 -25
  629. package/esm/validation/database/exists-except-current-user.js.map +0 -1
  630. package/esm/validation/database/exists.d.ts +0 -7
  631. package/esm/validation/database/exists.d.ts.map +0 -1
  632. package/esm/validation/database/exists.js +0 -21
  633. package/esm/validation/database/exists.js.map +0 -1
  634. package/esm/validation/database/index.d.ts +0 -12
  635. package/esm/validation/database/index.d.ts.map +0 -1
  636. package/esm/validation/database/types.d.ts +0 -68
  637. package/esm/validation/database/types.d.ts.map +0 -1
  638. package/esm/validation/database/unique-except-current-id.d.ts +0 -7
  639. package/esm/validation/database/unique-except-current-id.d.ts.map +0 -1
  640. package/esm/validation/database/unique-except-current-id.js +0 -23
  641. package/esm/validation/database/unique-except-current-id.js.map +0 -1
  642. package/esm/validation/database/unique-except-current-user.d.ts +0 -7
  643. package/esm/validation/database/unique-except-current-user.d.ts.map +0 -1
  644. package/esm/validation/database/unique-except-current-user.js +0 -25
  645. package/esm/validation/database/unique-except-current-user.js.map +0 -1
  646. package/esm/validation/database/unique.d.ts +0 -7
  647. package/esm/validation/database/unique.d.ts.map +0 -1
  648. package/esm/validation/database/unique.js +0 -30
  649. package/esm/validation/database/unique.js.map +0 -1
  650. package/esm/validation/file/file.d.ts +0 -22
  651. package/esm/validation/file/file.d.ts.map +0 -1
  652. package/esm/validation/file/file.js +0 -60
  653. package/esm/validation/file/file.js.map +0 -1
  654. package/esm/validation/file/index.d.ts +0 -6
  655. package/esm/validation/file/index.d.ts.map +0 -1
  656. package/esm/validation/index.d.ts +0 -16
  657. package/esm/validation/index.d.ts.map +0 -1
  658. package/esm/validation/init.d.ts +0 -7
  659. package/esm/validation/init.d.ts.map +0 -1
  660. package/esm/validation/init.js +0 -34
  661. package/esm/validation/init.js.map +0 -1
  662. package/esm/validation/plugins/database-plugin.d.ts +0 -14
  663. package/esm/validation/plugins/database-plugin.d.ts.map +0 -1
  664. package/esm/validation/plugins/database-plugin.js +0 -95
  665. package/esm/validation/plugins/database-plugin.js.map +0 -1
  666. package/esm/validation/plugins/file-plugin.d.ts +0 -11
  667. package/esm/validation/plugins/file-plugin.d.ts.map +0 -1
  668. package/esm/validation/plugins/file-plugin.js +0 -17
  669. package/esm/validation/plugins/file-plugin.js.map +0 -1
  670. package/esm/validation/plugins/index.d.ts +0 -9
  671. package/esm/validation/plugins/index.d.ts.map +0 -1
  672. package/esm/validation/plugins/localized-plugin.d.ts +0 -11
  673. package/esm/validation/plugins/localized-plugin.d.ts.map +0 -1
  674. package/esm/validation/plugins/localized-plugin.js +0 -19
  675. package/esm/validation/plugins/localized-plugin.js.map +0 -1
  676. package/esm/validation/types.d.ts +0 -87
  677. package/esm/validation/types.d.ts.map +0 -1
  678. package/esm/validation/validateAll.d.ts +0 -7
  679. package/esm/validation/validateAll.d.ts.map +0 -1
  680. package/esm/validation/validateAll.js +0 -39
  681. package/esm/validation/validateAll.js.map +0 -1
  682. package/esm/validation/validators/file-validator.d.ts +0 -40
  683. package/esm/validation/validators/file-validator.d.ts.map +0 -1
  684. package/esm/validation/validators/file-validator.js +0 -94
  685. package/esm/validation/validators/file-validator.js.map +0 -1
  686. package/esm/validation/validators/index.d.ts +0 -7
  687. package/esm/validation/validators/index.d.ts.map +0 -1
  688. package/esm/warlock-config/default-configurations.d.ts +0 -3
  689. package/esm/warlock-config/default-configurations.d.ts.map +0 -1
  690. package/esm/warlock-config/default-configurations.js +0 -8
  691. package/esm/warlock-config/default-configurations.js.map +0 -1
  692. package/esm/warlock-config/define-config.d.ts +0 -3
  693. package/esm/warlock-config/define-config.d.ts.map +0 -1
  694. package/esm/warlock-config/define-config.js +0 -3
  695. package/esm/warlock-config/define-config.js.map +0 -1
  696. package/esm/warlock-config/index.d.ts +0 -4
  697. package/esm/warlock-config/index.d.ts.map +0 -1
  698. package/esm/warlock-config/types.d.ts +0 -79
  699. package/esm/warlock-config/types.d.ts.map +0 -1
  700. package/esm/warlock-config/warlock-config.manager.d.ts +0 -83
  701. package/esm/warlock-config/warlock-config.manager.d.ts.map +0 -1
  702. package/esm/warlock-config/warlock-config.manager.js +0 -141
  703. package/esm/warlock-config/warlock-config.manager.js.map +0 -1
@@ -1,251 +0,0 @@
1
- import {router}from'../router/router.js';import {devLogError,formatModuleNotFoundError}from'./dev-logger.js';/**
2
- * Module Loader
3
- * Dynamically loads and manages application modules (main, routes, events, locales)
4
- * Handles module cache invalidation for HMR
5
- */
6
- class ModuleLoader {
7
- specialFilesCollector;
8
- /**
9
- * Loaded modules cache
10
- * Maps absolute path to loaded module
11
- */
12
- loadedModules = new Map();
13
- /**
14
- * Constructor
15
- */
16
- constructor(specialFilesCollector) {
17
- this.specialFilesCollector = specialFilesCollector;
18
- }
19
- /**
20
- * Load all special files in correct order
21
- */
22
- async loadAll() {
23
- // Load in specific order
24
- await this.loadLocaleFiles();
25
- await this.loadEventFiles();
26
- await this.loadMainFiles();
27
- await this.loadRouteFiles();
28
- }
29
- /**
30
- * Load all main.ts files
31
- * Main files are module entry points that run initialization code
32
- * Loaded in parallel as they should be independent
33
- */
34
- async loadMainFiles() {
35
- const mainFiles = this.specialFilesCollector.getMainFiles();
36
- if (mainFiles.length === 0) {
37
- return;
38
- }
39
- // Load all main files in parallel
40
- for (const file of mainFiles) {
41
- await this.loadModule(file, "main");
42
- }
43
- }
44
- /**
45
- * Load all locale files
46
- * Locale files register translations
47
- * Loaded in parallel as they are independent
48
- */
49
- async loadLocaleFiles() {
50
- const localeFiles = this.specialFilesCollector.getLocaleFiles();
51
- if (localeFiles.length === 0) {
52
- return;
53
- }
54
- // Load all locale files in parallel
55
- for (const file of localeFiles) {
56
- await this.loadModule(file, "locale");
57
- }
58
- }
59
- /**
60
- * Load all event files
61
- * Event files register event handlers
62
- * Loaded in parallel as they are independent
63
- */
64
- async loadEventFiles() {
65
- const eventFiles = this.specialFilesCollector.getEventFiles();
66
- if (eventFiles.length === 0) {
67
- return;
68
- }
69
- // Load all event files in parallel
70
- for (const file of eventFiles) {
71
- await this.loadModule(file, "event");
72
- }
73
- }
74
- /**
75
- * Load all route files
76
- * Route files register HTTP routes
77
- * Loaded sequentially as order might matter
78
- */
79
- async loadRouteFiles() {
80
- const routeFiles = this.specialFilesCollector.getRouteFiles();
81
- if (routeFiles.length === 0) {
82
- return;
83
- }
84
- // Load route files sequentially
85
- // because we are registering the source file, we must load routes sequentially
86
- for (const file of routeFiles) {
87
- await this.loadModule(file, "route");
88
- }
89
- }
90
- /**
91
- * Load a single module
92
- * @param file FileManager instance
93
- * @param type Module type for logging
94
- * @param bustCache Whether to add timestamp for cache busting (for HMR)
95
- */
96
- async loadModule(file, type, bustCache = false) {
97
- if (file.relativePath.endsWith(".env")) {
98
- // do nothing
99
- return;
100
- }
101
- // devLogInfo(`Loading module: ${file.relativePath} (${type})`);
102
- // Convert to file:// URL for cross-platform compatibility
103
- try {
104
- // For route files, wrap the import with source file tracking
105
- if (type === "route") {
106
- return await router.withSourceFile(file.relativePath, async () => {
107
- // Dynamic import the module (routes will be registered with sourceFile)
108
- const module = typeof __import !== "undefined"
109
- ? await __import(file.cachePath)
110
- : await import(file.cachePathUrl);
111
- // Store in cache (use source path as key for consistency)
112
- this.loadedModules.set(file.absolutePath, module);
113
- if (module?.cleanup && typeof module.cleanup === "function") {
114
- file.cleanup = module.cleanup;
115
- }
116
- return module;
117
- });
118
- }
119
- else {
120
- // Dynamic import the module
121
- const module = typeof __import !== "undefined"
122
- ? await __import(file.cachePath)
123
- : await import(file.cachePathUrl);
124
- // Store in cache (use source path as key for consistency)
125
- this.loadedModules.set(file.absolutePath, module);
126
- if (module?.cleanup && typeof module.cleanup === "function") {
127
- file.cleanup = module.cleanup;
128
- }
129
- return module;
130
- }
131
- // devLogSuccess(
132
- // `Module loaded: ${file.relativePath} (${type}) in ${(performance.now() - now).toFixed(2)}ms`,
133
- // );
134
- }
135
- catch (error) {
136
- console.log(error);
137
- // Format error message (especially for MODULE_NOT_FOUND)
138
- if (error.code === "ERR_MODULE_NOT_FOUND") {
139
- devLogError(formatModuleNotFoundError(error));
140
- }
141
- else {
142
- devLogError(`Failed to load ${type}: ${file.relativePath} - ${error?.message || error}`);
143
- }
144
- }
145
- }
146
- /**
147
- * Reload a single module (for HMR)
148
- * @param file FileManager instance
149
- */
150
- async reloadModule(file) {
151
- const moduleType = this.specialFilesCollector.getFileType(file.relativePath);
152
- if (!moduleType) {
153
- // Not a special file, no need to reload
154
- return;
155
- }
156
- try {
157
- // For route files, remove old routes before reloading
158
- if (moduleType === "route") {
159
- router.removeRoutesBySourceFile(file.relativePath);
160
- }
161
- // Clear module cache
162
- this.clearModuleCache(file.absolutePath);
163
- __clearModuleVersion(file.cachePath);
164
- // Reload the module with cache busting
165
- await this.loadModule(file, moduleType, true);
166
- }
167
- catch (error) {
168
- // Format error message (especially for MODULE_NOT_FOUND)
169
- if (error.code === "ERR_MODULE_NOT_FOUND") {
170
- devLogError(formatModuleNotFoundError(error));
171
- }
172
- else {
173
- devLogError(`Failed to reload module: ${error.message || error}`);
174
- }
175
- throw error;
176
- }
177
- }
178
- /**
179
- * Clear module cache for a specific file
180
- * This forces Node.js to re-import the module
181
- * @param absolutePath Absolute path to the module
182
- */
183
- clearModuleCache(absolutePath) {
184
- // Remove from our cache
185
- this.loadedModules.delete(absolutePath);
186
- }
187
- /**
188
- * We need a way to cleanup a module execution if it's deleted
189
- */
190
- cleanupDeletedModule(file) {
191
- this.clearModuleCache(file.absolutePath);
192
- __clearModuleVersion(file.cachePath);
193
- if (file.type === "route") {
194
- router.removeRoutesBySourceFile(file.relativePath);
195
- }
196
- if (file.cleanup) {
197
- file.cleanup();
198
- }
199
- }
200
- /**
201
- * Clear module cache for multiple files
202
- * @param absolutePaths Array of absolute paths
203
- */
204
- clearModuleCacheMultiple(absolutePaths) {
205
- for (const path of absolutePaths) {
206
- this.clearModuleCache(path);
207
- }
208
- }
209
- /**
210
- * Clear all application module cache
211
- * Used for full server restart
212
- */
213
- clearAllModuleCache() {
214
- // Clear all loaded modules
215
- for (const absolutePath of this.loadedModules.keys()) {
216
- this.clearModuleCache(absolutePath);
217
- }
218
- }
219
- /**
220
- * Get loaded module by path
221
- * @param absolutePath Absolute path to the module
222
- */
223
- getLoadedModule(absolutePath) {
224
- return this.loadedModules.get(absolutePath);
225
- }
226
- /**
227
- * Check if a module is loaded
228
- * @param absolutePath Absolute path to the module
229
- */
230
- isModuleLoaded(absolutePath) {
231
- return this.loadedModules.has(absolutePath);
232
- }
233
- /**
234
- * Get all loaded module paths
235
- */
236
- getLoadedModulePaths() {
237
- return Array.from(this.loadedModules.keys());
238
- }
239
- /**
240
- * Get statistics about loaded modules
241
- */
242
- getStats() {
243
- return {
244
- totalLoaded: this.loadedModules.size,
245
- mainFiles: this.specialFilesCollector.getMainFiles().length,
246
- routeFiles: this.specialFilesCollector.getRouteFiles().length,
247
- eventFiles: this.specialFilesCollector.getEventFiles().length,
248
- localeFiles: this.specialFilesCollector.getLocaleFiles().length,
249
- };
250
- }
251
- }export{ModuleLoader};//# sourceMappingURL=module-loader.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"module-loader.js","sources":["../../src/dev2-server/module-loader.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -1,16 +0,0 @@
1
- export declare class PackageJsonManager {
2
- /**
3
- * Package.json data
4
- */
5
- packageJson: any;
6
- /**
7
- * Initialize the package.json manager
8
- */
9
- init(): Promise<void>;
10
- /**
11
- * Check if the given path is a package path
12
- */
13
- isPathPackage(path: string): boolean;
14
- }
15
- export declare const packageJsonManager: PackageJsonManager;
16
- //# sourceMappingURL=package-json-manager.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"package-json-manager.d.ts","sourceRoot":"","sources":["../../src/dev2-server/package-json-manager.ts"],"names":[],"mappings":"AAGA,qBAAa,kBAAkB;IAC7B;;OAEG;IACI,WAAW,EAAE,GAAG,CAAM;IAE7B;;OAEG;IACU,IAAI;IAIjB;;OAEG;IACI,aAAa,CAAC,IAAI,EAAE,MAAM;CAOlC;AAED,eAAO,MAAM,kBAAkB,oBAA2B,CAAC"}
@@ -1,20 +0,0 @@
1
- import {getJsonFileAsync}from'@mongez/fs';import {Path}from'./path.js';class PackageJsonManager {
2
- /**
3
- * Package.json data
4
- */
5
- packageJson = {};
6
- /**
7
- * Initialize the package.json manager
8
- */
9
- async init() {
10
- this.packageJson = await getJsonFileAsync(Path.toAbsolute("package.json"));
11
- }
12
- /**
13
- * Check if the given path is a package path
14
- */
15
- isPathPackage(path) {
16
- const allPackages = Object.keys(this.packageJson.dependencies || {}).concat(Object.keys(this.packageJson.devDependencies || {}));
17
- return allPackages.some((packageName) => path.startsWith(packageName));
18
- }
19
- }
20
- const packageJsonManager = new PackageJsonManager();export{PackageJsonManager,packageJsonManager};//# sourceMappingURL=package-json-manager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"package-json-manager.js","sources":["../../src/dev2-server/package-json-manager.ts"],"sourcesContent":[null],"names":[],"mappings":"6EAGa,kBAAkB,CAAA;AAC7B;;AAEG;IACI,WAAW,GAAQ,EAAE,CAAC;AAE7B;;AAEG;AACI,IAAA,MAAM,IAAI,GAAA;AACf,QAAA,IAAI,CAAC,WAAW,GAAG,MAAM,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC;KAC5E;AAED;;AAEG;AACI,IAAA,aAAa,CAAC,IAAY,EAAA;AAC/B,QAAA,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,MAAM,CACzE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,eAAe,IAAI,EAAE,CAAC,CACpD,CAAC;AAEF,QAAA,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC,WAAW,KAAK,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC;KACxE;AACF,CAAA;AAEY,MAAA,kBAAkB,GAAG,IAAI,kBAAkB"}
@@ -1,13 +0,0 @@
1
- /**
2
- * This function will transpile the given ts/tsx code to js code
3
- * // also it will return the dependencies of the file
4
- *
5
- * @returns Map of originalImportPath -> resolvedAbsolutePath
6
- */
7
- export declare function parseImports(source: string, filePath: string): Promise<Map<string, string>>;
8
- /**
9
- * Clear the file exists cache
10
- * Should be called when new files are created to ensure fresh lookups
11
- */
12
- export declare function clearFileExistsCache(): void;
13
- //# sourceMappingURL=parse-imports.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parse-imports.d.ts","sourceRoot":"","sources":["../../src/dev2-server/parse-imports.ts"],"names":[],"mappings":"AAiJA;;;;;GAKG;AACH,wBAAsB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,gCAqDlE;AAqFD;;;GAGG;AACH,wBAAgB,oBAAoB,IAAI,IAAI,CAE3C"}
@@ -1,329 +0,0 @@
1
- import {isDirectoryAsync,fileExistsAsync}from'@mongez/fs';import {parse}from'es-module-lexer';import path from'node:path';import {Path}from'./path.js';import {tsconfigManager}from'./tsconfig-manager.js';/**
2
- * Extract import paths using regex (more reliable for TypeScript)
3
- * This is a fallback when es-module-lexer fails
4
- */
5
- function extractImportPathsWithRegex(source) {
6
- const imports = [];
7
- const seenPaths = new Set();
8
- /**
9
- * Check if an import line is type-only
10
- * Handles:
11
- * - import type { Foo } from "module"
12
- * - import type Foo from "module"
13
- * - import type * as Foo from "module"
14
- */
15
- const isTypeOnlyImport = (line) => {
16
- const trimmed = line.trim();
17
- return trimmed.startsWith("import type ") || !!trimmed.match(/^import\s+type\s+[\{\*]/);
18
- };
19
- /**
20
- * Check if an import has any runtime (non-type) imports
21
- * Handles mixed imports: import { type Foo, runtimeBar } from "module"
22
- * Returns true if there are runtime imports (should be tracked)
23
- */
24
- const hasRuntimeImports = (line) => {
25
- const trimmed = line.trim();
26
- // If it's a pure type-only import, no runtime imports
27
- if (isTypeOnlyImport(trimmed)) {
28
- return false;
29
- }
30
- // Extract the import specifiers part: import { ... } from "module"
31
- const specifiersMatch = trimmed.match(/import\s+\{([^}]+)\}/);
32
- if (!specifiersMatch) {
33
- // Not a destructured import, or it's a default/namespace import
34
- // These are runtime imports unless marked with "import type"
35
- return true;
36
- }
37
- const specifiers = specifiersMatch[1];
38
- // Split by comma and check each specifier
39
- const items = specifiers.split(",").map((s) => s.trim());
40
- // Check if ALL items are type-only (prefixed with "type ")
41
- const allTypeOnly = items.every((item) => {
42
- // Match: "type Foo" or "type Foo as Bar"
43
- return /^type\s+\w+/.test(item);
44
- });
45
- // If all are type-only, this import has no runtime imports
46
- // Otherwise, it has at least one runtime import
47
- return !allTypeOnly;
48
- };
49
- // Pattern 1: Standard ES module imports (handles multiline)
50
- // Matches: import { ... } from "path", import Foo from "path", import Foo, { ... } from "path"
51
- const importRegex = /import\s+(?:type\s+)?(\{[\s\S]*?\}|\*\s+as\s+\w+|\w+(?:\s*,\s*\{[\s\S]*?\})?)\s+from\s+['"]([^'"]+)['"]/g;
52
- let match;
53
- while ((match = importRegex.exec(source)) !== null) {
54
- const fullMatch = match[0];
55
- match[1];
56
- const importPath = match[2];
57
- // Skip type-only imports
58
- if (fullMatch.match(/^import\s+type\s+/)) {
59
- continue;
60
- }
61
- // Skip if it's a mixed import with only types
62
- if (!hasRuntimeImports(fullMatch)) {
63
- continue;
64
- }
65
- if (importPath && !seenPaths.has(importPath)) {
66
- seenPaths.add(importPath);
67
- imports.push({
68
- path: importPath,
69
- originalLine: fullMatch,
70
- });
71
- }
72
- }
73
- // Pattern 1b: Side-effect imports - import "path"
74
- const sideEffectRegex = /import\s+['"]([^'"]+)['"]/g;
75
- while ((match = sideEffectRegex.exec(source)) !== null) {
76
- const importPath = match[1];
77
- if (importPath && !seenPaths.has(importPath)) {
78
- seenPaths.add(importPath);
79
- imports.push({
80
- path: importPath,
81
- originalLine: match[0],
82
- });
83
- }
84
- }
85
- // Pattern 2: Dynamic imports - import("path")
86
- const dynamicImportPattern = /import\s*\(\s*['"]([^'"]+)['"]\s*\)/g;
87
- while ((match = dynamicImportPattern.exec(source)) !== null) {
88
- const importPath = match[1];
89
- if (importPath && !seenPaths.has(importPath)) {
90
- seenPaths.add(importPath);
91
- imports.push({
92
- path: importPath,
93
- originalLine: match[0],
94
- });
95
- }
96
- }
97
- // Pattern 3: Export from - export ... from "path"
98
- // Skip export type statements (e.g., export type { Foo } from "module")
99
- const exportFromPattern = /export\s+(?:\{[^}]*\}|\*|\w+)\s+from\s+['"]([^'"]+)['"]/g;
100
- while ((match = exportFromPattern.exec(source)) !== null) {
101
- const fullMatch = match[0];
102
- // Skip type-only exports: export type ... from "module"
103
- if (/^export\s+type\s+/.test(fullMatch)) {
104
- continue;
105
- }
106
- const importPath = match[1];
107
- if (importPath && !seenPaths.has(importPath)) {
108
- seenPaths.add(importPath);
109
- imports.push({
110
- path: importPath,
111
- originalLine: fullMatch,
112
- });
113
- }
114
- }
115
- return imports;
116
- }
117
- /**
118
- * This function will transpile the given ts/tsx code to js code
119
- * // also it will return the dependencies of the file
120
- *
121
- * @returns Map of originalImportPath -> resolvedAbsolutePath
122
- */
123
- async function parseImports(source, filePath) {
124
- try {
125
- // Skip .d.ts files - they're type declarations, not runtime code
126
- if (filePath.endsWith(".d.ts")) {
127
- return new Map();
128
- }
129
- // Try es-module-lexer first (faster and more accurate for simple cases)
130
- try {
131
- const [imports] = await parse(source);
132
- if (imports && imports.length > 0) {
133
- return await resolveImports(imports, filePath);
134
- }
135
- }
136
- catch (lexerError) {
137
- // es-module-lexer failed, fall back to regex-based extraction
138
- // This is common with TypeScript files that have complex syntax
139
- }
140
- // Fallback: Use regex-based extraction (more forgiving with TypeScript)
141
- const regexImports = extractImportPathsWithRegex(source);
142
- const resolvedImports = new Map();
143
- for (const { path: importPath } of regexImports) {
144
- // Skip node built-ins and external packages
145
- if (isNodeBuiltin(importPath)) {
146
- continue;
147
- }
148
- // Skip external node_modules packages (not starting with . or alias)
149
- if (!importPath.startsWith(".") && !tsconfigManager.isAlias(importPath)) {
150
- continue;
151
- }
152
- let resolvedPath = null;
153
- // Handle alias imports
154
- if (tsconfigManager.isAlias(importPath)) {
155
- resolvedPath = await resolveAliasImport(importPath);
156
- }
157
- else if (importPath.startsWith(".")) {
158
- // Handle relative imports
159
- resolvedPath = await resolveRelativeImport(importPath, filePath);
160
- }
161
- if (resolvedPath) {
162
- resolvedImports.set(importPath, resolvedPath);
163
- }
164
- }
165
- return resolvedImports;
166
- }
167
- catch (error) {
168
- console.error(`Error parsing imports for ${filePath}:`, error);
169
- return new Map();
170
- }
171
- }
172
- async function resolveImports(imports, filePath) {
173
- const resolvedImports = new Map();
174
- for (const imp of imports) {
175
- const importPath = imp.n;
176
- if (!importPath)
177
- continue;
178
- // Skip node built-ins and external packages
179
- if (isNodeBuiltin(importPath)) {
180
- continue;
181
- }
182
- // console.log(importPath, tsconfigManager.isAlias(importPath));
183
- // Skip external node_modules packages (not starting with . or alias)
184
- if (!importPath.startsWith(".") && !tsconfigManager.isAlias(importPath)) {
185
- continue;
186
- }
187
- let resolvedPath = null;
188
- // Handle alias imports (e.g., app/users/services/get-users.service)
189
- if (tsconfigManager.isAlias(importPath)) {
190
- resolvedPath = await resolveAliasImport(importPath);
191
- }
192
- else if (importPath.startsWith(".")) {
193
- // Handle relative imports (e.g., ./../services/get-user.service)
194
- resolvedPath = await resolveRelativeImport(importPath, filePath);
195
- }
196
- if (resolvedPath) {
197
- // Store mapping: original import path -> resolved absolute path
198
- resolvedImports.set(importPath, resolvedPath);
199
- }
200
- }
201
- return resolvedImports;
202
- }
203
- /**
204
- * Resolve alias imports to actual file paths with extensions
205
- * Example: app/users/services/get-users.service -> /absolute/path/to/src/app/users/services/get-users.service.ts
206
- */
207
- async function resolveAliasImport(importPath) {
208
- // Use tsconfig manager to resolve the alias to an absolute path
209
- const resolvedBase = tsconfigManager.resolveAliasToAbsolute(importPath);
210
- if (!resolvedBase)
211
- return null;
212
- // Try to resolve with extensions
213
- const resolvedPath = await tryResolveWithExtensions(resolvedBase);
214
- return resolvedPath;
215
- }
216
- /**
217
- * Resolve relative imports to actual file paths
218
- * Example: ./../services/get-user.service -> /absolute/path/to/services/get-user.service.ts
219
- */
220
- async function resolveRelativeImport(importPath, currentFilePath) {
221
- const dir = path.dirname(currentFilePath);
222
- // Use path.resolve to handle .. and . properly, then normalize to forward slashes
223
- const resolvedBase = Path.normalize(path.resolve(dir, importPath));
224
- // Try to resolve with extensions
225
- const resolvedPath = await tryResolveWithExtensions(resolvedBase);
226
- return resolvedPath;
227
- }
228
- /**
229
- * Try to resolve a file path by checking different extensions
230
- * TypeScript/JavaScript files can be imported without extensions
231
- *
232
- * @TODO: For better performance, we need to check the files in files orchestrator
233
- * instead of using the file system as we will be fetching all project files anyway.
234
- */
235
- // Cache for file existence checks to avoid redundant filesystem calls
236
- const fileExistsCache = new Map();
237
- /**
238
- * Clear the file exists cache
239
- * Should be called when new files are created to ensure fresh lookups
240
- */
241
- function clearFileExistsCache() {
242
- fileExistsCache.clear();
243
- }
244
- async function cachedFileExists(filePath) {
245
- if (fileExistsCache.has(filePath)) {
246
- return fileExistsCache.get(filePath);
247
- }
248
- const exists = (await fileExistsAsync(filePath));
249
- fileExistsCache.set(filePath, exists);
250
- return exists;
251
- }
252
- async function tryResolveWithExtensions(basePath) {
253
- // Normalize the base path first (handle Windows paths)
254
- const normalizedBase = Path.normalize(basePath);
255
- // List of extensions to try, in order of preference
256
- const extensions = [".ts", ".tsx", ".js", ".jsx", ".mjs", ".cjs"];
257
- const validExtensions = new Set(extensions);
258
- // If the path already has a VALID code file extension, check if it exists
259
- const ext = path.extname(normalizedBase);
260
- if (ext && validExtensions.has(ext)) {
261
- if (await cachedFileExists(normalizedBase)) {
262
- return normalizedBase;
263
- }
264
- // If explicit extension doesn't exist, return null
265
- return null;
266
- }
267
- // Try all extensions in parallel for better performance
268
- const pathsToCheck = extensions.map((extension) => normalizedBase + extension);
269
- const results = await Promise.all(pathsToCheck.map(async (p) => ({ path: p, exists: await cachedFileExists(p) })));
270
- // Return the first one that exists (in order of preference)
271
- for (const result of results) {
272
- if (result.exists) {
273
- return result.path;
274
- }
275
- }
276
- // Try index files in directory
277
- if (await isDirectoryAsync(normalizedBase)) {
278
- const indexPaths = extensions.map((extension) => Path.join(normalizedBase, `index${extension}`));
279
- const indexResults = await Promise.all(indexPaths.map(async (p) => ({ path: p, exists: await cachedFileExists(p) })));
280
- for (const result of indexResults) {
281
- if (result.exists) {
282
- return result.path;
283
- }
284
- }
285
- }
286
- return null;
287
- }
288
- /**
289
- * Check if import is a Node.js built-in module
290
- */
291
- function isNodeBuiltin(importPath) {
292
- const builtins = [
293
- "fs",
294
- "path",
295
- "http",
296
- "https",
297
- "crypto",
298
- "stream",
299
- "util",
300
- "events",
301
- "buffer",
302
- "child_process",
303
- "os",
304
- "url",
305
- "querystring",
306
- "zlib",
307
- "net",
308
- "tls",
309
- "dns",
310
- "dgram",
311
- "cluster",
312
- "worker_threads",
313
- "perf_hooks",
314
- "async_hooks",
315
- "timers",
316
- "readline",
317
- "repl",
318
- "vm",
319
- "assert",
320
- "console",
321
- "process",
322
- "v8",
323
- ];
324
- // Check for node: prefix or direct builtin name
325
- if (importPath.startsWith("node:"))
326
- return true;
327
- const moduleName = importPath.split("/")[0];
328
- return builtins.includes(moduleName);
329
- }export{clearFileExistsCache,parseImports};//# sourceMappingURL=parse-imports.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parse-imports.js","sources":["../../src/dev2-server/parse-imports.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}