@warlock.js/core 4.0.48 → 4.0.59

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 (723) hide show
  1. package/esm/application.d.ts +27 -0
  2. package/esm/application.d.ts.map +1 -0
  3. package/esm/bootstrap/setup.d.ts +2 -0
  4. package/esm/bootstrap/setup.d.ts.map +1 -0
  5. package/esm/bootstrap/setup.js +14 -0
  6. package/esm/bootstrap/setup.js.map +1 -0
  7. package/esm/bootstrap.d.ts +2 -0
  8. package/esm/bootstrap.d.ts.map +1 -0
  9. package/esm/bootstrap.js +5 -0
  10. package/esm/bootstrap.js.map +1 -0
  11. package/esm/cache/database-cache-driver.d.ts +56 -0
  12. package/esm/cache/database-cache-driver.d.ts.map +1 -0
  13. package/esm/cache/database-cache-driver.js +112 -0
  14. package/esm/cache/database-cache-driver.js.map +1 -0
  15. package/esm/cache/index.d.ts +3 -0
  16. package/esm/cache/index.d.ts.map +1 -0
  17. package/esm/cache/index.js +1 -0
  18. package/esm/cache/index.js.map +1 -0
  19. package/esm/cli/cli-command.d.ts +115 -0
  20. package/esm/cli/cli-command.d.ts.map +1 -0
  21. package/esm/cli/cli-command.js +227 -0
  22. package/esm/cli/cli-command.js.map +1 -0
  23. package/esm/cli/cli-commands.manager.d.ts +71 -0
  24. package/esm/cli/cli-commands.manager.d.ts.map +1 -0
  25. package/esm/cli/cli-commands.manager.js +348 -0
  26. package/esm/cli/cli-commands.manager.js.map +1 -0
  27. package/esm/cli/cli-commands.utils.d.ts +73 -0
  28. package/esm/cli/cli-commands.utils.d.ts.map +1 -0
  29. package/esm/cli/cli-commands.utils.js +195 -0
  30. package/esm/cli/cli-commands.utils.js.map +1 -0
  31. package/esm/cli/commands/add.command.d.ts +2 -0
  32. package/esm/cli/commands/add.command.d.ts.map +1 -0
  33. package/esm/cli/commands/add.command.js +15 -0
  34. package/esm/cli/commands/add.command.js.map +1 -0
  35. package/esm/cli/commands/build.command.d.ts +2 -0
  36. package/esm/cli/commands/build.command.d.ts.map +1 -0
  37. package/esm/cli/commands/build.command.js +8 -0
  38. package/esm/cli/commands/build.command.js.map +1 -0
  39. package/esm/cli/commands/dev-server.command.d.ts +2 -0
  40. package/esm/cli/commands/dev-server.command.d.ts.map +1 -0
  41. package/esm/cli/commands/dev-server.command.js +16 -0
  42. package/esm/cli/commands/dev-server.command.js.map +1 -0
  43. package/esm/cli/commands/migrate.command.d.ts +2 -0
  44. package/esm/cli/commands/migrate.command.d.ts.map +1 -0
  45. package/esm/cli/commands/migrate.command.js +37 -0
  46. package/esm/cli/commands/migrate.command.js.map +1 -0
  47. package/esm/cli/commands/seed.command.d.ts +2 -0
  48. package/esm/cli/commands/seed.command.d.ts.map +1 -0
  49. package/esm/cli/commands/seed.command.js +17 -0
  50. package/esm/cli/commands/seed.command.js.map +1 -0
  51. package/esm/cli/commands/start-production.command.d.ts +2 -0
  52. package/esm/cli/commands/start-production.command.d.ts.map +1 -0
  53. package/esm/cli/commands/start-production.command.js +65 -0
  54. package/esm/cli/commands/start-production.command.js.map +1 -0
  55. package/esm/cli/commands/typings-generator.command.d.ts +2 -0
  56. package/esm/cli/commands/typings-generator.command.d.ts.map +1 -0
  57. package/esm/cli/commands/typings-generator.command.js +37 -0
  58. package/esm/cli/commands/typings-generator.command.js.map +1 -0
  59. package/esm/cli/commands-loader.d.ts +18 -0
  60. package/esm/cli/commands-loader.d.ts.map +1 -0
  61. package/esm/cli/commands-loader.js +45 -0
  62. package/esm/cli/commands-loader.js.map +1 -0
  63. package/esm/cli/framework-cli-commands.d.ts +2 -0
  64. package/esm/cli/framework-cli-commands.d.ts.map +1 -0
  65. package/esm/cli/framework-cli-commands.js +11 -0
  66. package/esm/cli/framework-cli-commands.js.map +1 -0
  67. package/esm/cli/index.d.ts +3 -0
  68. package/esm/cli/index.d.ts.map +1 -0
  69. package/esm/cli/index.js +1 -4
  70. package/esm/cli/index.js.map +1 -1
  71. package/esm/cli/parse-cli-args.d.ts +18 -0
  72. package/esm/cli/parse-cli-args.d.ts.map +1 -0
  73. package/esm/cli/parse-cli-args.js +82 -0
  74. package/esm/cli/parse-cli-args.js.map +1 -0
  75. package/esm/cli/start.d.ts +2 -0
  76. package/esm/cli/start.d.ts.map +1 -0
  77. package/esm/cli/start.js +2 -6
  78. package/esm/cli/start.js.map +1 -1
  79. package/esm/cli/string-similarity.d.ts +44 -0
  80. package/esm/cli/string-similarity.d.ts.map +1 -0
  81. package/esm/cli/string-similarity.js +57 -0
  82. package/esm/cli/string-similarity.js.map +1 -0
  83. package/esm/cli/types.d.ts +206 -0
  84. package/esm/cli/types.d.ts.map +1 -0
  85. package/esm/config/config-getter.d.ts +35 -0
  86. package/esm/config/config-getter.d.ts.map +1 -0
  87. package/esm/config/config-getter.js +21 -0
  88. package/esm/config/config-getter.js.map +1 -0
  89. package/esm/config/config-handlers.d.ts +19 -0
  90. package/esm/config/config-handlers.d.ts.map +1 -0
  91. package/esm/config/config-handlers.js +47 -0
  92. package/esm/config/config-handlers.js.map +1 -0
  93. package/esm/config/config-loader.d.ts +37 -0
  94. package/esm/config/config-loader.d.ts.map +1 -0
  95. package/esm/config/config-loader.js +85 -0
  96. package/esm/config/config-loader.js.map +1 -0
  97. package/esm/config/config-manager.d.ts +22 -0
  98. package/esm/config/config-manager.d.ts.map +1 -0
  99. package/esm/config/config-manager.js +25 -0
  100. package/esm/config/config-manager.js.map +1 -0
  101. package/esm/config/config-special-handlers.d.ts +17 -0
  102. package/esm/config/config-special-handlers.d.ts.map +1 -0
  103. package/esm/config/config-special-handlers.js +23 -0
  104. package/esm/config/config-special-handlers.js.map +1 -0
  105. package/esm/config/index.d.ts +5 -0
  106. package/esm/config/index.d.ts.map +1 -0
  107. package/esm/config/load-config-files.d.ts +6 -0
  108. package/esm/config/load-config-files.d.ts.map +1 -0
  109. package/esm/config/load-config-files.js +19 -0
  110. package/esm/config/load-config-files.js.map +1 -0
  111. package/esm/config/types.d.ts +52 -0
  112. package/esm/config/types.d.ts.map +1 -0
  113. package/esm/database/index.d.ts +4 -0
  114. package/esm/database/index.d.ts.map +1 -0
  115. package/esm/database/migrate-action.d.ts +8 -0
  116. package/esm/database/migrate-action.d.ts.map +1 -0
  117. package/esm/database/migrate-action.js +95 -0
  118. package/esm/database/migrate-action.js.map +1 -0
  119. package/esm/database/models/database-log/database-log.d.ts +16 -0
  120. package/esm/database/models/database-log/database-log.d.ts.map +1 -0
  121. package/esm/database/models/database-log/database-log.js +17 -0
  122. package/esm/database/models/database-log/database-log.js.map +1 -0
  123. package/esm/database/models/database-log/index.d.ts +2 -0
  124. package/esm/database/models/database-log/index.d.ts.map +1 -0
  125. package/esm/database/seed-command-action.d.ts +3 -0
  126. package/esm/database/seed-command-action.d.ts.map +1 -0
  127. package/esm/database/seed-command-action.js +36 -0
  128. package/esm/database/seed-command-action.js.map +1 -0
  129. package/esm/database/seeds/index.d.ts +3 -0
  130. package/esm/database/seeds/index.d.ts.map +1 -0
  131. package/esm/database/seeds/seeder.d.ts +36 -0
  132. package/esm/database/seeds/seeder.d.ts.map +1 -0
  133. package/esm/database/seeds/seeder.js +6 -0
  134. package/esm/database/seeds/seeder.js.map +1 -0
  135. package/esm/database/seeds/seeders.manager.d.ts +47 -0
  136. package/esm/database/seeds/seeders.manager.d.ts.map +1 -0
  137. package/esm/database/seeds/seeders.manager.js +137 -0
  138. package/esm/database/seeds/seeders.manager.js.map +1 -0
  139. package/esm/database/seeds/seeds-table-migration.d.ts +8 -0
  140. package/esm/database/seeds/seeds-table-migration.d.ts.map +1 -0
  141. package/esm/database/seeds/seeds-table-migration.js +18 -0
  142. package/esm/database/seeds/seeds-table-migration.js.map +1 -0
  143. package/esm/database/seeds/types.d.ts +13 -0
  144. package/esm/database/seeds/types.d.ts.map +1 -0
  145. package/esm/database/seeds/utils.d.ts +2 -0
  146. package/esm/database/seeds/utils.d.ts.map +1 -0
  147. package/esm/database/seeds/utils.js +1 -0
  148. package/esm/database/seeds/utils.js.map +1 -0
  149. package/esm/database/utils.d.ts +18 -0
  150. package/esm/database/utils.d.ts.map +1 -0
  151. package/esm/database/utils.js +30 -0
  152. package/esm/database/utils.js.map +1 -0
  153. package/esm/dev2-server/connectors/base-connector.d.ts +49 -0
  154. package/esm/dev2-server/connectors/base-connector.d.ts.map +1 -0
  155. package/esm/dev2-server/connectors/base-connector.js +48 -0
  156. package/esm/dev2-server/connectors/base-connector.js.map +1 -0
  157. package/esm/dev2-server/connectors/cache-connector.d.ts +23 -0
  158. package/esm/dev2-server/connectors/cache-connector.d.ts.map +1 -0
  159. package/esm/dev2-server/connectors/cache-connector.js +35 -0
  160. package/esm/dev2-server/connectors/cache-connector.js.map +1 -0
  161. package/esm/dev2-server/connectors/connectors-manager.d.ts +38 -0
  162. package/esm/dev2-server/connectors/connectors-manager.d.ts.map +1 -0
  163. package/esm/dev2-server/connectors/connectors-manager.js +81 -0
  164. package/esm/dev2-server/connectors/connectors-manager.js.map +1 -0
  165. package/esm/dev2-server/connectors/database-connector.d.ts +23 -0
  166. package/esm/dev2-server/connectors/database-connector.d.ts.map +1 -0
  167. package/esm/dev2-server/connectors/database-connector.js +51 -0
  168. package/esm/dev2-server/connectors/database-connector.js.map +1 -0
  169. package/esm/dev2-server/connectors/http-connector.d.ts +29 -0
  170. package/esm/dev2-server/connectors/http-connector.d.ts.map +1 -0
  171. package/esm/dev2-server/connectors/http-connector.js +69 -0
  172. package/esm/dev2-server/connectors/http-connector.js.map +1 -0
  173. package/esm/dev2-server/connectors/index.d.ts +12 -0
  174. package/esm/dev2-server/connectors/index.d.ts.map +1 -0
  175. package/esm/dev2-server/connectors/storage.connector.d.ts +23 -0
  176. package/esm/dev2-server/connectors/storage.connector.d.ts.map +1 -0
  177. package/esm/dev2-server/connectors/storage.connector.js +29 -0
  178. package/esm/dev2-server/connectors/storage.connector.js.map +1 -0
  179. package/esm/dev2-server/connectors/types.d.ts +51 -0
  180. package/esm/dev2-server/connectors/types.d.ts.map +1 -0
  181. package/esm/dev2-server/connectors/types.js +10 -0
  182. package/esm/dev2-server/connectors/types.js.map +1 -0
  183. package/esm/dev2-server/create-worker.d.ts +34 -0
  184. package/esm/dev2-server/create-worker.d.ts.map +1 -0
  185. package/esm/dev2-server/create-worker.js +37 -0
  186. package/esm/dev2-server/create-worker.js.map +1 -0
  187. package/esm/dev2-server/dependency-graph.d.ts +93 -0
  188. package/esm/dev2-server/dependency-graph.d.ts.map +1 -0
  189. package/esm/dev2-server/dependency-graph.js +266 -0
  190. package/esm/dev2-server/dependency-graph.js.map +1 -0
  191. package/esm/dev2-server/dev-logger.d.ts +14 -0
  192. package/esm/dev2-server/dev-logger.d.ts.map +1 -0
  193. package/esm/dev2-server/dev-logger.js +130 -0
  194. package/esm/dev2-server/dev-logger.js.map +1 -0
  195. package/esm/dev2-server/development-server.d.ts +47 -0
  196. package/esm/dev2-server/development-server.d.ts.map +1 -0
  197. package/esm/dev2-server/development-server.js +149 -0
  198. package/esm/dev2-server/development-server.js.map +1 -0
  199. package/esm/dev2-server/events.d.ts +5 -0
  200. package/esm/dev2-server/events.d.ts.map +1 -0
  201. package/esm/dev2-server/events.js +4 -0
  202. package/esm/dev2-server/events.js.map +1 -0
  203. package/esm/dev2-server/export-analyzer.d.ts +84 -0
  204. package/esm/dev2-server/export-analyzer.d.ts.map +1 -0
  205. package/esm/dev2-server/export-analyzer.js +206 -0
  206. package/esm/dev2-server/export-analyzer.js.map +1 -0
  207. package/esm/dev2-server/file-event-handler.d.ts +156 -0
  208. package/esm/dev2-server/file-event-handler.d.ts.map +1 -0
  209. package/esm/dev2-server/file-event-handler.js +300 -0
  210. package/esm/dev2-server/file-event-handler.js.map +1 -0
  211. package/esm/dev2-server/file-manager.d.ts +385 -0
  212. package/esm/dev2-server/file-manager.d.ts.map +1 -0
  213. package/esm/dev2-server/file-manager.js +580 -0
  214. package/esm/dev2-server/file-manager.js.map +1 -0
  215. package/esm/dev2-server/file-operations.d.ts +203 -0
  216. package/esm/dev2-server/file-operations.d.ts.map +1 -0
  217. package/esm/dev2-server/file-operations.js +365 -0
  218. package/esm/dev2-server/file-operations.js.map +1 -0
  219. package/esm/dev2-server/files-orchestrator.d.ts +146 -0
  220. package/esm/dev2-server/files-orchestrator.d.ts.map +1 -0
  221. package/esm/dev2-server/files-orchestrator.js +314 -0
  222. package/esm/dev2-server/files-orchestrator.js.map +1 -0
  223. package/esm/dev2-server/files-watcher.d.ts +67 -0
  224. package/esm/dev2-server/files-watcher.d.ts.map +1 -0
  225. package/esm/dev2-server/files-watcher.js +95 -0
  226. package/esm/dev2-server/files-watcher.js.map +1 -0
  227. package/esm/dev2-server/flags.d.ts +10 -0
  228. package/esm/dev2-server/flags.d.ts.map +1 -0
  229. package/esm/dev2-server/flags.js +9 -0
  230. package/esm/dev2-server/flags.js.map +1 -0
  231. package/esm/dev2-server/health-checker/checkers/base-health-checker.d.ts +52 -0
  232. package/esm/dev2-server/health-checker/checkers/base-health-checker.d.ts.map +1 -0
  233. package/esm/dev2-server/health-checker/checkers/base-health-checker.js +71 -0
  234. package/esm/dev2-server/health-checker/checkers/base-health-checker.js.map +1 -0
  235. package/esm/dev2-server/health-checker/checkers/eslint-health-checker.d.ts +40 -0
  236. package/esm/dev2-server/health-checker/checkers/eslint-health-checker.d.ts.map +1 -0
  237. package/esm/dev2-server/health-checker/checkers/eslint-health-checker.js +217 -0
  238. package/esm/dev2-server/health-checker/checkers/eslint-health-checker.js.map +1 -0
  239. package/esm/dev2-server/health-checker/checkers/typescript-health-checker.d.ts +56 -0
  240. package/esm/dev2-server/health-checker/checkers/typescript-health-checker.d.ts.map +1 -0
  241. package/esm/dev2-server/health-checker/checkers/typescript-health-checker.js +279 -0
  242. package/esm/dev2-server/health-checker/checkers/typescript-health-checker.js.map +1 -0
  243. package/esm/dev2-server/health-checker/file-health-checker.contract.d.ts +59 -0
  244. package/esm/dev2-server/health-checker/file-health-checker.contract.d.ts.map +1 -0
  245. package/esm/dev2-server/health-checker/file-health-result.d.ts +68 -0
  246. package/esm/dev2-server/health-checker/file-health-result.d.ts.map +1 -0
  247. package/esm/dev2-server/health-checker/file-health-result.js +40 -0
  248. package/esm/dev2-server/health-checker/file-health-result.js.map +1 -0
  249. package/esm/dev2-server/health-checker/files-healthcare.manager.d.ts +115 -0
  250. package/esm/dev2-server/health-checker/files-healthcare.manager.d.ts.map +1 -0
  251. package/esm/dev2-server/health-checker/files-healthcare.manager.js +422 -0
  252. package/esm/dev2-server/health-checker/files-healthcare.manager.js.map +1 -0
  253. package/esm/dev2-server/health-checker/index.d.ts +6 -0
  254. package/esm/dev2-server/health-checker/index.d.ts.map +1 -0
  255. package/esm/dev2-server/health-checker/workers/eslint-health.worker.d.ts +2 -0
  256. package/esm/dev2-server/health-checker/workers/eslint-health.worker.d.ts.map +1 -0
  257. package/esm/dev2-server/health-checker/workers/eslint-health.worker.js +214 -0
  258. package/esm/dev2-server/health-checker/workers/eslint-health.worker.js.map +1 -0
  259. package/esm/dev2-server/health-checker/workers/ts-health.worker.d.ts +2 -0
  260. package/esm/dev2-server/health-checker/workers/ts-health.worker.d.ts.map +1 -0
  261. package/esm/dev2-server/health-checker/workers/ts-health.worker.js +261 -0
  262. package/esm/dev2-server/health-checker/workers/ts-health.worker.js.map +1 -0
  263. package/esm/dev2-server/import-transformer.d.ts +17 -0
  264. package/esm/dev2-server/import-transformer.d.ts.map +1 -0
  265. package/esm/dev2-server/import-transformer.js +280 -0
  266. package/esm/dev2-server/import-transformer.js.map +1 -0
  267. package/esm/dev2-server/index.d.ts +1 -0
  268. package/esm/dev2-server/index.d.ts.map +1 -0
  269. package/esm/dev2-server/layer-executor.d.ts +61 -0
  270. package/esm/dev2-server/layer-executor.d.ts.map +1 -0
  271. package/esm/dev2-server/layer-executor.js +314 -0
  272. package/esm/dev2-server/layer-executor.js.map +1 -0
  273. package/esm/dev2-server/manifest-manager.d.ts +80 -0
  274. package/esm/dev2-server/manifest-manager.d.ts.map +1 -0
  275. package/esm/dev2-server/manifest-manager.js +107 -0
  276. package/esm/dev2-server/manifest-manager.js.map +1 -0
  277. package/esm/dev2-server/module-loader.d.ts +108 -0
  278. package/esm/dev2-server/module-loader.d.ts.map +1 -0
  279. package/esm/dev2-server/module-loader.js +266 -0
  280. package/esm/dev2-server/module-loader.js.map +1 -0
  281. package/esm/dev2-server/package-json-manager.d.ts +16 -0
  282. package/esm/dev2-server/package-json-manager.d.ts.map +1 -0
  283. package/esm/dev2-server/package-json-manager.js +20 -0
  284. package/esm/dev2-server/package-json-manager.js.map +1 -0
  285. package/esm/dev2-server/parse-imports.d.ts +13 -0
  286. package/esm/dev2-server/parse-imports.d.ts.map +1 -0
  287. package/esm/dev2-server/parse-imports.js +329 -0
  288. package/esm/dev2-server/parse-imports.js.map +1 -0
  289. package/esm/dev2-server/path.d.ts +39 -0
  290. package/esm/dev2-server/path.d.ts.map +1 -0
  291. package/esm/dev2-server/path.js +56 -0
  292. package/esm/dev2-server/path.js.map +1 -0
  293. package/esm/dev2-server/runtime-import-helper.d.ts +8 -0
  294. package/esm/dev2-server/runtime-import-helper.d.ts.map +1 -0
  295. package/esm/dev2-server/runtime-import-helper.js +157 -0
  296. package/esm/dev2-server/runtime-import-helper.js.map +1 -0
  297. package/esm/dev2-server/special-files-collector.d.ts +114 -0
  298. package/esm/dev2-server/special-files-collector.d.ts.map +1 -0
  299. package/esm/dev2-server/special-files-collector.js +212 -0
  300. package/esm/dev2-server/special-files-collector.js.map +1 -0
  301. package/esm/dev2-server/start-development-server.d.ts +7 -0
  302. package/esm/dev2-server/start-development-server.d.ts.map +1 -0
  303. package/esm/dev2-server/start-development-server.js +21 -0
  304. package/esm/dev2-server/start-development-server.js.map +1 -0
  305. package/esm/dev2-server/transpile-file.d.ts +11 -0
  306. package/esm/dev2-server/transpile-file.d.ts.map +1 -0
  307. package/esm/dev2-server/transpile-file.js +21 -0
  308. package/esm/dev2-server/transpile-file.js.map +1 -0
  309. package/esm/dev2-server/tsconfig-manager.d.ts +45 -0
  310. package/esm/dev2-server/tsconfig-manager.d.ts.map +1 -0
  311. package/esm/dev2-server/tsconfig-manager.js +107 -0
  312. package/esm/dev2-server/tsconfig-manager.js.map +1 -0
  313. package/esm/dev2-server/type-generator.d.ts +115 -0
  314. package/esm/dev2-server/type-generator.d.ts.map +1 -0
  315. package/esm/dev2-server/type-generator.js +566 -0
  316. package/esm/dev2-server/type-generator.js.map +1 -0
  317. package/esm/dev2-server/types.d.ts +30 -0
  318. package/esm/dev2-server/types.d.ts.map +1 -0
  319. package/esm/dev2-server/utils.d.ts +15 -0
  320. package/esm/dev2-server/utils.d.ts.map +1 -0
  321. package/esm/dev2-server/utils.js +40 -0
  322. package/esm/dev2-server/utils.js.map +1 -0
  323. package/esm/generations/add-command.action.d.ts +3 -0
  324. package/esm/generations/add-command.action.d.ts.map +1 -0
  325. package/esm/generations/add-command.action.js +154 -0
  326. package/esm/generations/add-command.action.js.map +1 -0
  327. package/esm/http/config.d.ts +10 -0
  328. package/esm/http/config.d.ts.map +1 -0
  329. package/esm/http/config.js +22 -0
  330. package/esm/http/config.js.map +1 -0
  331. package/esm/http/context/request-context.d.ts +47 -0
  332. package/esm/http/context/request-context.d.ts.map +1 -0
  333. package/esm/http/context/request-context.js +52 -0
  334. package/esm/http/context/request-context.js.map +1 -0
  335. package/esm/http/createHttpApplication.d.ts +3 -0
  336. package/esm/http/createHttpApplication.d.ts.map +1 -0
  337. package/esm/http/createHttpApplication.js +28 -0
  338. package/esm/http/createHttpApplication.js.map +1 -0
  339. package/esm/http/database/RequestLog.d.ts +16 -0
  340. package/esm/http/database/RequestLog.d.ts.map +1 -0
  341. package/esm/http/database/RequestLog.js +26 -0
  342. package/esm/http/database/RequestLog.js.map +1 -0
  343. package/esm/http/errors/index.d.ts +2 -0
  344. package/esm/http/errors/index.d.ts.map +1 -0
  345. package/esm/http/errors/resource-not-found.error.d.ts +21 -0
  346. package/esm/http/errors/resource-not-found.error.d.ts.map +1 -0
  347. package/esm/http/errors/resource-not-found.error.js +40 -0
  348. package/esm/http/errors/resource-not-found.error.js.map +1 -0
  349. package/esm/http/events.d.ts +4 -0
  350. package/esm/http/events.d.ts.map +1 -0
  351. package/esm/http/events.js +26 -0
  352. package/esm/http/events.js.map +1 -0
  353. package/esm/http/index.d.ts +17 -0
  354. package/esm/http/index.d.ts.map +1 -0
  355. package/esm/http/middleware/cache-response-middleware.d.ts +34 -0
  356. package/esm/http/middleware/cache-response-middleware.d.ts.map +1 -0
  357. package/esm/http/middleware/cache-response-middleware.js +45 -0
  358. package/esm/http/middleware/cache-response-middleware.js.map +1 -0
  359. package/esm/http/middleware/index.d.ts +3 -0
  360. package/esm/http/middleware/index.d.ts.map +1 -0
  361. package/esm/http/middleware/inject-request-context.d.ts +21 -0
  362. package/esm/http/middleware/inject-request-context.d.ts.map +1 -0
  363. package/esm/http/middleware/inject-request-context.js +105 -0
  364. package/esm/http/middleware/inject-request-context.js.map +1 -0
  365. package/esm/http/plugins/index.d.ts +3 -0
  366. package/esm/http/plugins/index.d.ts.map +1 -0
  367. package/esm/http/plugins.d.ts +3 -0
  368. package/esm/http/plugins.d.ts.map +1 -0
  369. package/esm/http/plugins.js +31 -0
  370. package/esm/http/plugins.js.map +1 -0
  371. package/esm/http/request-controller.d.ts +11 -0
  372. package/esm/http/request-controller.d.ts.map +1 -0
  373. package/esm/http/request-controller.js +9 -0
  374. package/esm/http/request-controller.js.map +1 -0
  375. package/esm/http/request.d.ts +380 -0
  376. package/esm/http/request.d.ts.map +1 -0
  377. package/esm/http/request.js +733 -0
  378. package/esm/http/request.js.map +1 -0
  379. package/esm/http/response.js +914 -0
  380. package/esm/http/response.js.map +1 -0
  381. package/esm/http/server.d.ts +8 -0
  382. package/esm/http/server.d.ts.map +1 -0
  383. package/esm/http/server.js +15 -0
  384. package/esm/http/server.js.map +1 -0
  385. package/esm/http/types.d.ts +174 -0
  386. package/esm/http/types.d.ts.map +1 -0
  387. package/esm/http/uploaded-file.d.ts +459 -0
  388. package/esm/http/uploaded-file.d.ts.map +1 -0
  389. package/esm/http/uploaded-file.js +709 -0
  390. package/esm/http/uploaded-file.js.map +1 -0
  391. package/esm/http/uploads-config.d.ts +26 -0
  392. package/esm/http/uploads-config.d.ts.map +1 -0
  393. package/esm/http/uploads-config.js +35 -0
  394. package/esm/http/uploads-config.js.map +1 -0
  395. package/esm/http/uploads-types.d.ts +236 -0
  396. package/esm/http/uploads-types.d.ts.map +1 -0
  397. package/esm/image/image.d.ts +388 -0
  398. package/esm/image/image.d.ts.map +1 -0
  399. package/esm/image/image.js +602 -0
  400. package/esm/image/image.js.map +1 -0
  401. package/esm/image/index.d.ts +2 -0
  402. package/esm/image/index.d.ts.map +1 -0
  403. package/esm/index.d.ts +28 -0
  404. package/esm/index.d.ts.map +1 -0
  405. package/esm/index.js +1 -28
  406. package/esm/index.js.map +1 -1
  407. package/esm/logger/index.d.ts +3 -0
  408. package/esm/logger/index.d.ts.map +1 -0
  409. package/esm/logger/logger.d.ts +3 -0
  410. package/esm/logger/logger.d.ts.map +1 -0
  411. package/esm/logger/logger.js +16 -0
  412. package/esm/logger/logger.js.map +1 -0
  413. package/esm/logger/types.d.ts +39 -0
  414. package/esm/logger/types.d.ts.map +1 -0
  415. package/esm/mail/config.d.ts +83 -0
  416. package/esm/mail/config.d.ts.map +1 -0
  417. package/esm/mail/config.js +152 -0
  418. package/esm/mail/config.js.map +1 -0
  419. package/esm/mail/events.d.ts +96 -0
  420. package/esm/mail/events.d.ts.map +1 -0
  421. package/esm/mail/events.js +123 -0
  422. package/esm/mail/events.js.map +1 -0
  423. package/esm/mail/index.d.ts +10 -0
  424. package/esm/mail/index.d.ts.map +1 -0
  425. package/esm/mail/mail.d.ts +175 -0
  426. package/esm/mail/mail.d.ts.map +1 -0
  427. package/esm/mail/mail.js +286 -0
  428. package/esm/mail/mail.js.map +1 -0
  429. package/esm/mail/mailer-pool.d.ts +27 -0
  430. package/esm/mail/mailer-pool.d.ts.map +1 -0
  431. package/esm/mail/mailer-pool.js +143 -0
  432. package/esm/mail/mailer-pool.js.map +1 -0
  433. package/esm/mail/react-mail.d.ts +9 -0
  434. package/esm/mail/react-mail.d.ts.map +1 -0
  435. package/esm/mail/react-mail.js +28 -0
  436. package/esm/mail/react-mail.js.map +1 -0
  437. package/esm/mail/send-mail.d.ts +33 -0
  438. package/esm/mail/send-mail.d.ts.map +1 -0
  439. package/esm/mail/send-mail.js +309 -0
  440. package/esm/mail/send-mail.js.map +1 -0
  441. package/esm/mail/test-mailbox.d.ts +110 -0
  442. package/esm/mail/test-mailbox.d.ts.map +1 -0
  443. package/esm/mail/test-mailbox.js +143 -0
  444. package/esm/mail/test-mailbox.js.map +1 -0
  445. package/esm/mail/types.d.ts +245 -0
  446. package/esm/mail/types.d.ts.map +1 -0
  447. package/esm/mail/types.js +13 -0
  448. package/esm/mail/types.js.map +1 -0
  449. package/esm/manifest/manifest-manager.d.ts +74 -0
  450. package/esm/manifest/manifest-manager.d.ts.map +1 -0
  451. package/esm/manifest/manifest-manager.js +88 -0
  452. package/esm/manifest/manifest-manager.js.map +1 -0
  453. package/esm/production/build-app-production.d.ts +6 -0
  454. package/esm/production/build-app-production.d.ts.map +1 -0
  455. package/esm/production/build-app-production.js +8 -0
  456. package/esm/production/build-app-production.js.map +1 -0
  457. package/esm/production/esbuild-plugins.d.ts +5 -0
  458. package/esm/production/esbuild-plugins.d.ts.map +1 -0
  459. package/esm/production/esbuild-plugins.js +23 -0
  460. package/esm/production/esbuild-plugins.js.map +1 -0
  461. package/esm/production/production-builder.d.ts +76 -0
  462. package/esm/production/production-builder.d.ts.map +1 -0
  463. package/esm/production/production-builder.js +247 -0
  464. package/esm/production/production-builder.js.map +1 -0
  465. package/esm/react/index.d.ts +14 -0
  466. package/esm/react/index.d.ts.map +1 -0
  467. package/esm/react/index.js +65 -0
  468. package/esm/react/index.js.map +1 -0
  469. package/esm/repositories/adapters/cascade/cascade-adapter.d.ts +85 -0
  470. package/esm/repositories/adapters/cascade/cascade-adapter.d.ts.map +1 -0
  471. package/esm/repositories/adapters/cascade/cascade-adapter.js +179 -0
  472. package/esm/repositories/adapters/cascade/cascade-adapter.js.map +1 -0
  473. package/esm/repositories/adapters/cascade/cascade-query-builder.d.ts +124 -0
  474. package/esm/repositories/adapters/cascade/cascade-query-builder.d.ts.map +1 -0
  475. package/esm/repositories/adapters/cascade/cascade-query-builder.js +267 -0
  476. package/esm/repositories/adapters/cascade/cascade-query-builder.js.map +1 -0
  477. package/esm/repositories/adapters/cascade/filter-applicator.d.ts +62 -0
  478. package/esm/repositories/adapters/cascade/filter-applicator.d.ts.map +1 -0
  479. package/esm/repositories/adapters/cascade/filter-applicator.js +423 -0
  480. package/esm/repositories/adapters/cascade/filter-applicator.js.map +1 -0
  481. package/esm/repositories/adapters/cascade/index.d.ts +7 -0
  482. package/esm/repositories/adapters/cascade/index.d.ts.map +1 -0
  483. package/esm/repositories/contracts/index.d.ts +8 -0
  484. package/esm/repositories/contracts/index.d.ts.map +1 -0
  485. package/esm/repositories/contracts/query-builder.contract.d.ts +279 -0
  486. package/esm/repositories/contracts/query-builder.contract.d.ts.map +1 -0
  487. package/esm/repositories/contracts/repository-adapter.contract.d.ts +183 -0
  488. package/esm/repositories/contracts/repository-adapter.contract.d.ts.map +1 -0
  489. package/esm/repositories/contracts/types.d.ts +278 -0
  490. package/esm/repositories/contracts/types.d.ts.map +1 -0
  491. package/esm/repositories/index.d.ts +8 -0
  492. package/esm/repositories/index.d.ts.map +1 -0
  493. package/esm/repositories/repository.manager.d.ts +619 -0
  494. package/esm/repositories/repository.manager.d.ts.map +1 -0
  495. package/esm/repositories/repository.manager.js +978 -0
  496. package/esm/repositories/repository.manager.js.map +1 -0
  497. package/esm/resource/define-resource.js +58 -0
  498. package/esm/resource/define-resource.js.map +1 -0
  499. package/esm/resource/index.d.ts +5 -0
  500. package/esm/resource/index.d.ts.map +1 -0
  501. package/esm/resource/resource-field-builder.d.ts +83 -0
  502. package/esm/resource/resource-field-builder.d.ts.map +1 -0
  503. package/esm/resource/resource-field-builder.js +189 -0
  504. package/esm/resource/resource-field-builder.js.map +1 -0
  505. package/esm/resource/resource.d.ts +105 -0
  506. package/esm/resource/resource.d.ts.map +1 -0
  507. package/esm/resource/resource.js +231 -0
  508. package/esm/resource/resource.js.map +1 -0
  509. package/esm/resource/types.d.ts +40 -0
  510. package/esm/resource/types.d.ts.map +1 -0
  511. package/esm/restful/index.d.ts +2 -0
  512. package/esm/restful/index.d.ts.map +1 -0
  513. package/esm/restful/restful.d.ts +110 -0
  514. package/esm/restful/restful.d.ts.map +1 -0
  515. package/esm/restful/restful.js +317 -0
  516. package/esm/restful/restful.js.map +1 -0
  517. package/esm/router/index.d.ts +4 -0
  518. package/esm/router/index.d.ts.map +1 -0
  519. package/esm/router/route-registry.d.ts +30 -0
  520. package/esm/router/route-registry.d.ts.map +1 -0
  521. package/esm/router/route-registry.js +67 -0
  522. package/esm/router/route-registry.js.map +1 -0
  523. package/esm/router/route.d.ts +34 -0
  524. package/esm/router/route.d.ts.map +1 -0
  525. package/esm/router/router.d.ts +169 -0
  526. package/esm/router/router.d.ts.map +1 -0
  527. package/esm/router/router.js +578 -0
  528. package/esm/router/router.js.map +1 -0
  529. package/esm/router/types.d.ts +267 -0
  530. package/esm/router/types.d.ts.map +1 -0
  531. package/esm/router/utils.d.ts +5 -0
  532. package/esm/router/utils.d.ts.map +1 -0
  533. package/esm/router/utils.js +6 -0
  534. package/esm/router/utils.js.map +1 -0
  535. package/esm/storage/config.d.ts +15 -0
  536. package/esm/storage/config.d.ts.map +1 -0
  537. package/esm/storage/config.js +32 -0
  538. package/esm/storage/config.js.map +1 -0
  539. package/esm/storage/context/storage-driver-context.d.ts +69 -0
  540. package/esm/storage/context/storage-driver-context.d.ts.map +1 -0
  541. package/esm/storage/context/storage-driver-context.js +80 -0
  542. package/esm/storage/context/storage-driver-context.js.map +1 -0
  543. package/esm/storage/drivers/cloud-driver.d.ts +196 -0
  544. package/esm/storage/drivers/cloud-driver.d.ts.map +1 -0
  545. package/esm/storage/drivers/cloud-driver.js +697 -0
  546. package/esm/storage/drivers/cloud-driver.js.map +1 -0
  547. package/esm/storage/drivers/do-spaces-driver.d.ts +43 -0
  548. package/esm/storage/drivers/do-spaces-driver.d.ts.map +1 -0
  549. package/esm/storage/drivers/do-spaces-driver.js +50 -0
  550. package/esm/storage/drivers/do-spaces-driver.js.map +1 -0
  551. package/esm/storage/drivers/local-driver.d.ts +151 -0
  552. package/esm/storage/drivers/local-driver.d.ts.map +1 -0
  553. package/esm/storage/drivers/local-driver.js +448 -0
  554. package/esm/storage/drivers/local-driver.js.map +1 -0
  555. package/esm/storage/drivers/r2-driver.d.ts +47 -0
  556. package/esm/storage/drivers/r2-driver.d.ts.map +1 -0
  557. package/esm/storage/drivers/r2-driver.js +60 -0
  558. package/esm/storage/drivers/r2-driver.js.map +1 -0
  559. package/esm/storage/drivers/s3-driver.d.ts +32 -0
  560. package/esm/storage/drivers/s3-driver.d.ts.map +1 -0
  561. package/esm/storage/drivers/s3-driver.js +37 -0
  562. package/esm/storage/drivers/s3-driver.js.map +1 -0
  563. package/esm/storage/index.d.ts +13 -0
  564. package/esm/storage/index.d.ts.map +1 -0
  565. package/esm/storage/scoped-storage.d.ts +514 -0
  566. package/esm/storage/scoped-storage.d.ts.map +1 -0
  567. package/esm/storage/scoped-storage.js +656 -0
  568. package/esm/storage/scoped-storage.js.map +1 -0
  569. package/esm/storage/storage-file.d.ts +216 -0
  570. package/esm/storage/storage-file.d.ts.map +1 -0
  571. package/esm/storage/storage-file.js +358 -0
  572. package/esm/storage/storage-file.js.map +1 -0
  573. package/esm/storage/storage.d.ts +583 -0
  574. package/esm/storage/storage.d.ts.map +1 -0
  575. package/esm/storage/storage.js +945 -0
  576. package/esm/storage/storage.js.map +1 -0
  577. package/esm/storage/types.d.ts +909 -0
  578. package/esm/storage/types.d.ts.map +1 -0
  579. package/esm/storage/utils/mime.d.ts +33 -0
  580. package/esm/storage/utils/mime.d.ts.map +1 -0
  581. package/esm/storage/utils/mime.js +45 -0
  582. package/esm/storage/utils/mime.js.map +1 -0
  583. package/esm/store/index.d.ts +25 -0
  584. package/esm/store/index.d.ts.map +1 -0
  585. package/esm/store/index.js +52 -0
  586. package/esm/store/index.js.map +1 -0
  587. package/esm/utils/app-log.d.ts +8 -0
  588. package/esm/utils/app-log.d.ts.map +1 -0
  589. package/esm/utils/app-log.js +7 -0
  590. package/esm/utils/app-log.js.map +1 -0
  591. package/esm/utils/cleanup-temp-files.d.ts +5 -0
  592. package/esm/utils/cleanup-temp-files.d.ts.map +1 -0
  593. package/esm/utils/database-log.d.ts +25 -0
  594. package/esm/utils/database-log.d.ts.map +1 -0
  595. package/esm/utils/database-log.js +43 -0
  596. package/esm/utils/database-log.js.map +1 -0
  597. package/esm/utils/download-file.d.ts +3 -0
  598. package/esm/utils/download-file.d.ts.map +1 -0
  599. package/esm/utils/environment.d.ts +4 -0
  600. package/esm/utils/environment.d.ts.map +1 -0
  601. package/esm/utils/environment.js +6 -0
  602. package/esm/utils/environment.js.map +1 -0
  603. package/esm/utils/get-localized.d.ts +10 -0
  604. package/esm/utils/get-localized.d.ts.map +1 -0
  605. package/esm/utils/get-localized.js +15 -0
  606. package/esm/utils/get-localized.js.map +1 -0
  607. package/esm/utils/index.d.ts +12 -0
  608. package/esm/utils/index.d.ts.map +1 -0
  609. package/esm/utils/internal.d.ts +4 -0
  610. package/esm/utils/internal.d.ts.map +1 -0
  611. package/esm/utils/paths.d.ts +55 -0
  612. package/esm/utils/paths.d.ts.map +1 -0
  613. package/esm/utils/paths.js +89 -0
  614. package/esm/utils/paths.js.map +1 -0
  615. package/esm/utils/promise-all-object.d.ts +8 -0
  616. package/esm/utils/promise-all-object.d.ts.map +1 -0
  617. package/esm/utils/promise-all-object.js +12 -0
  618. package/esm/utils/promise-all-object.js.map +1 -0
  619. package/esm/utils/queue.d.ts +49 -0
  620. package/esm/utils/queue.d.ts.map +1 -0
  621. package/esm/utils/queue.js +89 -0
  622. package/esm/utils/queue.js.map +1 -0
  623. package/esm/utils/sleep.d.ts +2 -0
  624. package/esm/utils/sleep.d.ts.map +1 -0
  625. package/esm/utils/sleep.js +3 -0
  626. package/esm/utils/sleep.js.map +1 -0
  627. package/esm/utils/sluggable.d.ts +5 -0
  628. package/esm/utils/sluggable.d.ts.map +1 -0
  629. package/esm/utils/sluggable.js +15 -0
  630. package/esm/utils/sluggable.js.map +1 -0
  631. package/esm/utils/to-json.d.ts +2 -0
  632. package/esm/utils/to-json.d.ts.map +1 -0
  633. package/esm/utils/to-json.js +26 -0
  634. package/esm/utils/to-json.js.map +1 -0
  635. package/esm/utils/types.d.ts +22 -0
  636. package/esm/utils/types.d.ts.map +1 -0
  637. package/esm/utils/urls.d.ts +21 -0
  638. package/esm/utils/urls.d.ts.map +1 -0
  639. package/esm/utils/urls.js +31 -0
  640. package/esm/utils/urls.js.map +1 -0
  641. package/esm/validation/database/exists-except-current-id.d.ts +7 -0
  642. package/esm/validation/database/exists-except-current-id.d.ts.map +1 -0
  643. package/esm/validation/database/exists-except-current-id.js +23 -0
  644. package/esm/validation/database/exists-except-current-id.js.map +1 -0
  645. package/esm/validation/database/exists-except-current-user.d.ts +7 -0
  646. package/esm/validation/database/exists-except-current-user.d.ts.map +1 -0
  647. package/esm/validation/database/exists-except-current-user.js +25 -0
  648. package/esm/validation/database/exists-except-current-user.js.map +1 -0
  649. package/esm/validation/database/exists.d.ts +7 -0
  650. package/esm/validation/database/exists.d.ts.map +1 -0
  651. package/esm/validation/database/exists.js +21 -0
  652. package/esm/validation/database/exists.js.map +1 -0
  653. package/esm/validation/database/index.d.ts +12 -0
  654. package/esm/validation/database/index.d.ts.map +1 -0
  655. package/esm/validation/database/types.d.ts +68 -0
  656. package/esm/validation/database/types.d.ts.map +1 -0
  657. package/esm/validation/database/unique-except-current-id.d.ts +7 -0
  658. package/esm/validation/database/unique-except-current-id.d.ts.map +1 -0
  659. package/esm/validation/database/unique-except-current-id.js +23 -0
  660. package/esm/validation/database/unique-except-current-id.js.map +1 -0
  661. package/esm/validation/database/unique-except-current-user.d.ts +7 -0
  662. package/esm/validation/database/unique-except-current-user.d.ts.map +1 -0
  663. package/esm/validation/database/unique-except-current-user.js +25 -0
  664. package/esm/validation/database/unique-except-current-user.js.map +1 -0
  665. package/esm/validation/database/unique.d.ts +7 -0
  666. package/esm/validation/database/unique.d.ts.map +1 -0
  667. package/esm/validation/database/unique.js +30 -0
  668. package/esm/validation/database/unique.js.map +1 -0
  669. package/esm/validation/file/file.d.ts +22 -0
  670. package/esm/validation/file/file.d.ts.map +1 -0
  671. package/esm/validation/file/file.js +60 -0
  672. package/esm/validation/file/file.js.map +1 -0
  673. package/esm/validation/file/index.d.ts +6 -0
  674. package/esm/validation/file/index.d.ts.map +1 -0
  675. package/esm/validation/index.d.ts +16 -0
  676. package/esm/validation/index.d.ts.map +1 -0
  677. package/esm/validation/init.d.ts +7 -0
  678. package/esm/validation/init.d.ts.map +1 -0
  679. package/esm/validation/init.js +36 -0
  680. package/esm/validation/init.js.map +1 -0
  681. package/esm/validation/plugins/database-plugin.d.ts +14 -0
  682. package/esm/validation/plugins/database-plugin.d.ts.map +1 -0
  683. package/esm/validation/plugins/database-plugin.js +95 -0
  684. package/esm/validation/plugins/database-plugin.js.map +1 -0
  685. package/esm/validation/plugins/file-plugin.d.ts +11 -0
  686. package/esm/validation/plugins/file-plugin.d.ts.map +1 -0
  687. package/esm/validation/plugins/file-plugin.js +17 -0
  688. package/esm/validation/plugins/file-plugin.js.map +1 -0
  689. package/esm/validation/plugins/index.d.ts +9 -0
  690. package/esm/validation/plugins/index.d.ts.map +1 -0
  691. package/esm/validation/plugins/localized-plugin.d.ts +11 -0
  692. package/esm/validation/plugins/localized-plugin.d.ts.map +1 -0
  693. package/esm/validation/plugins/localized-plugin.js +19 -0
  694. package/esm/validation/plugins/localized-plugin.js.map +1 -0
  695. package/esm/validation/types.d.ts +87 -0
  696. package/esm/validation/types.d.ts.map +1 -0
  697. package/esm/validation/validateAll.d.ts +7 -0
  698. package/esm/validation/validateAll.d.ts.map +1 -0
  699. package/esm/validation/validateAll.js +60 -0
  700. package/esm/validation/validateAll.js.map +1 -0
  701. package/esm/validation/validators/file-validator.d.ts +46 -0
  702. package/esm/validation/validators/file-validator.d.ts.map +1 -0
  703. package/esm/validation/validators/file-validator.js +112 -0
  704. package/esm/validation/validators/file-validator.js.map +1 -0
  705. package/esm/validation/validators/index.d.ts +7 -0
  706. package/esm/validation/validators/index.d.ts.map +1 -0
  707. package/esm/warlock-config/default-configurations.d.ts +3 -0
  708. package/esm/warlock-config/default-configurations.d.ts.map +1 -0
  709. package/esm/warlock-config/default-configurations.js +8 -0
  710. package/esm/warlock-config/default-configurations.js.map +1 -0
  711. package/esm/warlock-config/define-config.d.ts +3 -0
  712. package/esm/warlock-config/define-config.d.ts.map +1 -0
  713. package/esm/warlock-config/define-config.js +3 -0
  714. package/esm/warlock-config/define-config.js.map +1 -0
  715. package/esm/warlock-config/index.d.ts +4 -0
  716. package/esm/warlock-config/index.d.ts.map +1 -0
  717. package/esm/warlock-config/types.d.ts +79 -0
  718. package/esm/warlock-config/types.d.ts.map +1 -0
  719. package/esm/warlock-config/warlock-config.manager.d.ts +83 -0
  720. package/esm/warlock-config/warlock-config.manager.d.ts.map +1 -0
  721. package/esm/warlock-config/warlock-config.manager.js +141 -0
  722. package/esm/warlock-config/warlock-config.manager.js.map +1 -0
  723. package/package.json +66 -71
@@ -0,0 +1,266 @@
1
+ /**
2
+ * Dependency Graph
3
+ * Tracks bidirectional relationships between files:
4
+ * - dependencies: files that this file imports
5
+ * - dependents: files that import this file
6
+ */
7
+ class DependencyGraph {
8
+ /**
9
+ * Map of file -> files it depends on (imports)
10
+ * Key: relative file path
11
+ * Value: Set of relative file paths this file imports
12
+ */
13
+ dependencies = new Map();
14
+ /**
15
+ * Map of file -> files that depend on it (importers)
16
+ * Key: relative file path
17
+ * Value: Set of relative file paths that import this file
18
+ */
19
+ dependents = new Map();
20
+ /**
21
+ * Build dependency graph from FileManager map
22
+ */
23
+ build(files) {
24
+ // Clear existing graph
25
+ this.dependencies.clear();
26
+ this.dependents.clear();
27
+ // Build graph from all files
28
+ for (const [relativePath, fileManager] of files) {
29
+ // Initialize empty sets ONLY if not already present
30
+ // (addDependency may have already created entries for this file)
31
+ if (!this.dependencies.has(relativePath)) {
32
+ this.dependencies.set(relativePath, new Set());
33
+ }
34
+ if (!this.dependents.has(relativePath)) {
35
+ this.dependents.set(relativePath, new Set());
36
+ }
37
+ // Add dependencies
38
+ for (const dependency of fileManager.dependencies) {
39
+ this.addDependency(relativePath, dependency);
40
+ }
41
+ }
42
+ // Detect circular dependencies
43
+ const cycles = this.detectCircularDependencies();
44
+ if (cycles.length > 0) {
45
+ this.displayCircularDependencyWarnings(cycles);
46
+ }
47
+ }
48
+ /**
49
+ * Add a dependency relationship
50
+ * @param file The file that has the dependency
51
+ * @param dependency The file being depended upon
52
+ */
53
+ addDependency(file, dependency) {
54
+ // Ensure both files exist in the graph
55
+ if (!this.dependencies.has(file)) {
56
+ this.dependencies.set(file, new Set());
57
+ }
58
+ if (!this.dependents.has(dependency)) {
59
+ this.dependents.set(dependency, new Set());
60
+ }
61
+ // Add bidirectional relationship
62
+ this.dependencies.get(file).add(dependency);
63
+ this.dependents.get(dependency).add(file);
64
+ }
65
+ /**
66
+ * Remove a dependency relationship
67
+ * @param file The file that has the dependency
68
+ * @param dependency The file being depended upon
69
+ */
70
+ removeDependency(file, dependency) {
71
+ this.dependencies.get(file)?.delete(dependency);
72
+ this.dependents.get(dependency)?.delete(file);
73
+ }
74
+ /**
75
+ * Remove all relationships for a file
76
+ * @param file The file to remove
77
+ */
78
+ removeFile(file) {
79
+ // Remove as dependent from all its dependencies
80
+ const deps = this.dependencies.get(file);
81
+ if (deps) {
82
+ for (const dependency of deps) {
83
+ this.dependents.get(dependency)?.delete(file);
84
+ }
85
+ }
86
+ // Remove as dependency from all its dependents
87
+ const dependents = this.dependents.get(file);
88
+ if (dependents) {
89
+ for (const dependent of dependents) {
90
+ this.dependencies.get(dependent)?.delete(file);
91
+ }
92
+ }
93
+ // Remove from maps
94
+ this.dependencies.delete(file);
95
+ this.dependents.delete(file);
96
+ }
97
+ /**
98
+ * Update dependencies for a file
99
+ * @param file The file to update
100
+ * @param newDependencies New set of dependencies
101
+ */
102
+ updateFile(file, newDependencies) {
103
+ // Get old dependencies
104
+ const oldDependencies = this.dependencies.get(file) || new Set();
105
+ // Find removed dependencies
106
+ for (const oldDep of oldDependencies) {
107
+ if (!newDependencies.has(oldDep)) {
108
+ this.removeDependency(file, oldDep);
109
+ }
110
+ }
111
+ // Find added dependencies
112
+ for (const newDep of newDependencies) {
113
+ if (!oldDependencies.has(newDep)) {
114
+ this.addDependency(file, newDep);
115
+ }
116
+ }
117
+ }
118
+ /**
119
+ * Get files that this file depends on (imports)
120
+ * @param file The file to check
121
+ * @returns Set of files this file imports
122
+ */
123
+ getDependencies(file) {
124
+ return this.dependencies.get(file) || new Set();
125
+ }
126
+ /**
127
+ * Get files that depend on this file (importers)
128
+ * @param file The file to check
129
+ * @returns Set of files that import this file
130
+ */
131
+ getDependents(file) {
132
+ return this.dependents.get(file) || new Set();
133
+ }
134
+ /**
135
+ * Get invalidation chain for a file
136
+ * Returns all files that need to be reloaded when this file changes
137
+ * Includes the file itself and all transitive dependents
138
+ * @param file The file that changed
139
+ * @returns Array of files to invalidate (in order)
140
+ */
141
+ getInvalidationChain(file) {
142
+ const chain = [file];
143
+ const visited = new Set([file]);
144
+ const traverse = (current) => {
145
+ const deps = this.getDependents(current);
146
+ for (const dep of deps) {
147
+ if (!visited.has(dep)) {
148
+ visited.add(dep);
149
+ chain.push(dep);
150
+ traverse(dep); // Recursive traversal
151
+ }
152
+ }
153
+ };
154
+ traverse(file);
155
+ return chain;
156
+ }
157
+ /**
158
+ * Detect circular dependencies in the dependency graph
159
+ * Uses depth-first search to find cycles
160
+ * Note: Type-only imports are already excluded at the parsing level (parse-imports.ts)
161
+ * @returns Array of circular dependency chains (each chain is an array of file paths)
162
+ */
163
+ detectCircularDependencies() {
164
+ const cycles = [];
165
+ const visited = new Set();
166
+ const recursionStack = new Set();
167
+ const dfs = (file, path) => {
168
+ visited.add(file);
169
+ recursionStack.add(file);
170
+ path.push(file);
171
+ const deps = this.getDependencies(file);
172
+ for (const dep of deps) {
173
+ if (!visited.has(dep)) {
174
+ dfs(dep, [...path]);
175
+ }
176
+ else if (recursionStack.has(dep)) {
177
+ // Found a cycle
178
+ const cycleStart = path.indexOf(dep);
179
+ const cycle = [...path.slice(cycleStart), dep];
180
+ cycles.push(cycle);
181
+ }
182
+ }
183
+ recursionStack.delete(file);
184
+ };
185
+ for (const file of this.dependencies.keys()) {
186
+ if (!visited.has(file)) {
187
+ dfs(file, []);
188
+ }
189
+ }
190
+ return cycles;
191
+ }
192
+ /**
193
+ * Display circular dependency warnings in a formatted, user-friendly way
194
+ * Shows each cycle with visual tree structure and helpful recommendations
195
+ */
196
+ displayCircularDependencyWarnings(cycles) {
197
+ const colors = {
198
+ yellow: (text) => `\x1b[33m${text}\x1b[0m`,
199
+ cyan: (text) => `\x1b[36m${text}\x1b[0m`,
200
+ dim: (text) => `\x1b[2m${text}\x1b[0m`,
201
+ bold: (text) => `\x1b[1m${text}\x1b[0m`,
202
+ };
203
+ console.log("");
204
+ console.log(colors.yellow("⚠️ Circular Dependencies Detected"));
205
+ console.log(colors.dim("━".repeat(60)));
206
+ console.log("");
207
+ console.log(colors.dim(`Found ${colors.bold(cycles.length.toString())} circular dependency chain${cycles.length > 1 ? "s" : ""}`));
208
+ console.log("");
209
+ cycles.forEach((cycle, index) => {
210
+ console.log(colors.cyan(` ${index + 1}. Cycle with ${cycle.length - 1} files:`));
211
+ console.log("");
212
+ // Display the cycle chain
213
+ cycle.forEach((file, fileIndex) => {
214
+ const isLast = fileIndex === cycle.length - 1;
215
+ const arrow = isLast ? colors.dim(" └─→ ") : colors.dim(" ├─→ ");
216
+ const fileName = file.split("/").pop() || file;
217
+ const filePath = colors.dim(file.replace(fileName, ""));
218
+ if (isLast) {
219
+ // Last item is the same as first (completes the cycle)
220
+ console.log(arrow + colors.yellow(`${filePath}${colors.bold(fileName)} (cycle completes)`));
221
+ }
222
+ else {
223
+ console.log(arrow + filePath + colors.bold(fileName));
224
+ }
225
+ });
226
+ console.log("");
227
+ });
228
+ console.log(colors.dim("━".repeat(60)));
229
+ console.log(colors.yellow("💡 Recommendation:"));
230
+ console.log(colors.dim(" Refactor your code to remove circular dependencies for better"));
231
+ console.log(colors.dim(" maintainability and HMR performance."));
232
+ console.log("");
233
+ }
234
+ /**
235
+ * Get statistics about the dependency graph
236
+ */
237
+ getStats() {
238
+ let totalDependencies = 0;
239
+ let maxDependencies = 0;
240
+ let maxDependents = 0;
241
+ let mostDependedFile = "";
242
+ let mostDependingFile = "";
243
+ for (const [file, deps] of this.dependencies) {
244
+ totalDependencies += deps.size;
245
+ if (deps.size > maxDependencies) {
246
+ maxDependencies = deps.size;
247
+ mostDependingFile = file;
248
+ }
249
+ }
250
+ for (const [file, deps] of this.dependents) {
251
+ if (deps.size > maxDependents) {
252
+ maxDependents = deps.size;
253
+ mostDependedFile = file;
254
+ }
255
+ }
256
+ return {
257
+ totalFiles: this.dependencies.size,
258
+ totalDependencies,
259
+ avgDependenciesPerFile: totalDependencies / this.dependencies.size || 0,
260
+ maxDependencies,
261
+ maxDependents,
262
+ mostDependingFile,
263
+ mostDependedFile,
264
+ };
265
+ }
266
+ }export{DependencyGraph};//# sourceMappingURL=dependency-graph.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dependency-graph.js","sources":["../../src/dev2-server/dependency-graph.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ export declare function devLog(message: string): void;
2
+ export declare function devLogSuccess(message: string): void;
3
+ export declare function devLogError(message: string, error?: any): void;
4
+ export declare function devLogWarn(message: string): void;
5
+ export declare function devLogInfo(message: string): void;
6
+ export declare function devLogDim(message: string): void;
7
+ export declare function devLogHMR(file: string, dependents?: number): void;
8
+ export declare function devLogFSR(reason: string): void;
9
+ export declare function devLogConfig(file: string, connectors?: string[]): void;
10
+ export declare function devLogReady(message: string): void;
11
+ export declare function devLogSection(title: string): void;
12
+ export declare function formatModuleNotFoundError(error: Error, suggestions?: string[]): string;
13
+ export declare function devServeLog(message: string): void;
14
+ //# sourceMappingURL=dev-logger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dev-logger.d.ts","sourceRoot":"","sources":["../../src/dev2-server/dev-logger.ts"],"names":[],"mappings":"AAcA,wBAAgB,MAAM,CAAC,OAAO,EAAE,MAAM,QAErC;AAGD,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,QAE5C;AAGD,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,GAAG,QAOvD;AAGD,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,QAEzC;AAGD,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,QAEzC;AAGD,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,QAExC;AAGD,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,QAS1D;AAGD,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,QAEvC;AAGD,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,QAO/D;AAGD,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,QAE1C;AAGD,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,QAE1C;AAyCD,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,KAAK,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,CAuDtF;AAGD,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,QAE1C"}
@@ -0,0 +1,130 @@
1
+ import {colors}from'@mongez/copper';import dayjs from'dayjs';import {Path}from'./path.js';/**
2
+ * Dev server logger with Vite-like formatting
3
+ */
4
+ // Timestamp formatter
5
+ function timestamp() {
6
+ return colors.dim(`${dayjs().format("HH:mm:ss A")}`);
7
+ }
8
+ // Main log function
9
+ function devLog(message) {
10
+ console.log(`${timestamp()} ${message}`);
11
+ }
12
+ // Success log (green checkmark)
13
+ function devLogSuccess(message) {
14
+ console.log(`${timestamp()} ${colors.green("✓")} ${colors.green(message)}`);
15
+ }
16
+ // Error log (red X)
17
+ function devLogError(message, error) {
18
+ console.log(`${timestamp()} ${colors.red("✗")} ${colors.red(message)}`);
19
+ if (error && error.stack) {
20
+ // Clean up error stack to show relative paths
21
+ const cleanStack = cleanErrorStack(error.stack);
22
+ console.log(colors.dim(cleanStack));
23
+ }
24
+ }
25
+ // Warning log (yellow)
26
+ function devLogWarn(message) {
27
+ console.log(`${timestamp()} ${colors.yellow("⚠")} ${colors.yellow(message)}`);
28
+ }
29
+ // Info log (cyan)
30
+ function devLogInfo(message) {
31
+ console.log(`${timestamp()} ${colors.cyan(message)}`);
32
+ }
33
+ // Dim log (for less important info)
34
+ function devLogDim(message) {
35
+ console.log(`${timestamp()} ${colors.dim(message)}`);
36
+ }
37
+ // HMR update log (like Vite)
38
+ function devLogHMR(file, dependents) {
39
+ const relativePath = Path.toRelative(file);
40
+ const depInfo = dependents
41
+ ? colors.dim(` +${dependents} module${dependents > 1 ? "s" : ""}`)
42
+ : "";
43
+ // console.log(`${timestamp()} ✨ ${colors.green("hmr update")}✨ ${colors.dim(relativePath)}${depInfo}`);
44
+ console.log(`${timestamp()} 🔥 ${colors.green("hmr update")} ${colors.dim(relativePath)}${depInfo}`);
45
+ }
46
+ // Ready log (like Vite's ready message)
47
+ function devLogReady(message) {
48
+ console.log(`\n${timestamp()} ${colors.green("➜")} ${colors.bold(message)}`);
49
+ }
50
+ // Section header
51
+ function devLogSection(title) {
52
+ console.log(`\n${timestamp()} ${colors.bold(colors.cyan(title))}`);
53
+ }
54
+ // Clean error stack to show relative paths instead of absolute cache paths
55
+ function cleanErrorStack(stack) {
56
+ const lines = stack.split("\n");
57
+ const cleaned = lines.map((line) => {
58
+ // Replace absolute cache paths with relative source paths
59
+ // Pattern: D:\...\dev-server\.warlock\cache\src-app-users-main.js
60
+ // Replace with: src/app/users/main.ts
61
+ let cleanedLine = line;
62
+ // Remove cache directory references
63
+ cleanedLine = cleanedLine.replace(/\.warlock[\\\/]cache[\\\/]/g, "");
64
+ // Convert cache file names back to source paths
65
+ // src-app-users-main.js → src/app/users/main.ts
66
+ cleanedLine = cleanedLine.replace(/([a-zA-Z0-9_-]+(?:-[a-zA-Z0-9_-]+)+)\.js/g, (match, p1) => {
67
+ const sourcePath = p1.replace(/-/g, "/") + ".ts";
68
+ return sourcePath;
69
+ });
70
+ // Make paths relative
71
+ try {
72
+ const absolutePathMatch = cleanedLine.match(/([A-Z]:\\[^:]+|\/[^:]+)(?=:|\))/);
73
+ if (absolutePathMatch) {
74
+ const absolutePath = absolutePathMatch[1];
75
+ const relativePath = Path.toRelative(absolutePath);
76
+ cleanedLine = cleanedLine.replace(absolutePath, relativePath);
77
+ }
78
+ }
79
+ catch {
80
+ // If path conversion fails, keep original
81
+ }
82
+ return cleanedLine;
83
+ });
84
+ return cleaned.join("\n");
85
+ }
86
+ // Format module not found errors with enhanced context
87
+ function formatModuleNotFoundError(error, suggestions) {
88
+ const message = error.message;
89
+ // Extract paths from error message
90
+ // Pattern: Cannot find module 'D:\...\cache\src-app-users-utils.js' imported from 'D:\...\main.js'
91
+ const match = message.match(/Cannot find module '([^']+)' imported from '([^']+)'/);
92
+ if (match) {
93
+ const [, modulePath, importerPath] = match;
94
+ // Convert cache paths to source paths
95
+ const cleanModulePath = modulePath
96
+ .replace(/\.warlock[\\\/]cache[\\\/]/, "")
97
+ .replace(/([a-zA-Z0-9_-]+(?:-[a-zA-Z0-9_-]+)+)\.js/, (m, p1) => p1.replace(/-/g, "/") + ".ts");
98
+ const cleanImporterPath = importerPath
99
+ .replace(/\.warlock[\\\/]cache[\\\/]/, "")
100
+ .replace(/([a-zA-Z0-9_-]+(?:-[a-zA-Z0-9_-]+)+)\.js/, (m, p1) => p1.replace(/-/g, "/") + ".ts");
101
+ // Make paths relative
102
+ const relativeModule = Path.toRelative(cleanModulePath);
103
+ const relativeImporter = Path.toRelative(cleanImporterPath);
104
+ // Build formatted message
105
+ const lines = [
106
+ "",
107
+ `${colors.red("❌ MODULE NOT FOUND")}`,
108
+ "",
109
+ `${colors.dim("Cannot find:")} ${colors.cyan(relativeModule)}`,
110
+ "",
111
+ `${colors.dim("Imported by:")}`,
112
+ ` ${colors.yellow("→")} ${colors.white(relativeImporter)}`,
113
+ ];
114
+ // Add suggestions if provided
115
+ if (suggestions && suggestions.length > 0) {
116
+ lines.push("");
117
+ lines.push(`${colors.dim("Did you mean?")}`);
118
+ suggestions.forEach((s) => {
119
+ lines.push(` ${colors.cyan("→")} ${colors.green(s)}`);
120
+ });
121
+ }
122
+ lines.push("");
123
+ return lines.join("\n");
124
+ }
125
+ return message;
126
+ }
127
+ // Legacy function for backward compatibility
128
+ function devServeLog(message) {
129
+ devLog(message);
130
+ }export{devLog,devLogDim,devLogError,devLogHMR,devLogInfo,devLogReady,devLogSection,devLogSuccess,devLogWarn,devServeLog,formatModuleNotFoundError};//# sourceMappingURL=dev-logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dev-logger.js","sources":["../../src/dev2-server/dev-logger.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -0,0 +1,47 @@
1
+ import { ModuleLoader } from "./module-loader";
2
+ /**
3
+ * Development Server
4
+ * Main coordinator for the dev server
5
+ * Manages file system, connectors, and hot reloading
6
+ */
7
+ export declare class DevelopmentServer {
8
+ /**
9
+ * Module loader - dynamically loads application modules
10
+ */
11
+ private moduleLoader?;
12
+ /**
13
+ * Layer executor - handles HMR and FSR execution
14
+ */
15
+ private layerExecutor?;
16
+ /**
17
+ * Whether the server is currently running
18
+ */
19
+ private running;
20
+ constructor();
21
+ /**
22
+ * Initialize and start the development server
23
+ */
24
+ start(): Promise<void>;
25
+ /**
26
+ * Setup event listeners for file changes
27
+ */
28
+ private setupEventListeners;
29
+ /**
30
+ * Handle batch completion event
31
+ * Triggered when a batch of files has been processed
32
+ */
33
+ private handleBatchComplete;
34
+ /**
35
+ * Gracefully shutdown the development server
36
+ */
37
+ shutdown(): Promise<void>;
38
+ /**
39
+ * Check if server is running
40
+ */
41
+ isRunning(): boolean;
42
+ /**
43
+ * Get module loader
44
+ */
45
+ getModuleLoader(): ModuleLoader | undefined;
46
+ }
47
+ //# sourceMappingURL=development-server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"development-server.d.ts","sourceRoot":"","sources":["../../src/dev2-server/development-server.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAG/C;;;;GAIG;AACH,qBAAa,iBAAiB;IAC5B;;OAEG;IACH,OAAO,CAAC,YAAY,CAAC,CAAe;IAEpC;;OAEG;IACH,OAAO,CAAC,aAAa,CAAC,CAAgB;IAEtC;;OAEG;IACH,OAAO,CAAC,OAAO,CAAkB;;IAMjC;;OAEG;IACU,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAmDnC;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAU3B;;;OAGG;YACW,mBAAmB;IA4DjC;;OAEG;IACU,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAiBtC;;OAEG;IACI,SAAS,IAAI,OAAO;IAI3B;;OAEG;IACI,eAAe,IAAI,YAAY,GAAG,SAAS;CAGnD"}
@@ -0,0 +1,149 @@
1
+ import {colors}from'@mongez/copper';import events from'@mongez/events';import {getFileAsync}from'@mongez/fs';import {connectorsManager}from'./connectors/connectors-manager.js';import {devLogSection,devLogReady,devServeLog}from'./dev-logger.js';import {filesOrchestrator}from'./files-orchestrator.js';import {LayerExecutor}from'./layer-executor.js';import {typeGenerator}from'./type-generator.js';/**
2
+ * Development Server
3
+ * Main coordinator for the dev server
4
+ * Manages file system, connectors, and hot reloading
5
+ */
6
+ class DevelopmentServer {
7
+ /**
8
+ * Module loader - dynamically loads application modules
9
+ */
10
+ moduleLoader;
11
+ /**
12
+ * Layer executor - handles HMR and FSR execution
13
+ */
14
+ layerExecutor;
15
+ /**
16
+ * Whether the server is currently running
17
+ */
18
+ running = false;
19
+ constructor() {
20
+ devLogSection("Starting Development Server...");
21
+ }
22
+ /**
23
+ * Initialize and start the development server
24
+ */
25
+ async start() {
26
+ try {
27
+ const now = performance.now();
28
+ // STEP 1: Initialize file system (discover and process files)
29
+ await filesOrchestrator.init();
30
+ await filesOrchestrator.initiaizeAll();
31
+ // Start file watcher
32
+ await filesOrchestrator.watchFiles();
33
+ // devLogInfo("Initializing special files...");
34
+ // STEP 3: Collect special files
35
+ filesOrchestrator.specialFilesCollector.collect(filesOrchestrator.getFiles());
36
+ // devLogInfo("Setting up event listeners...");
37
+ // STEP 6: Setup event listeners
38
+ this.setupEventListeners();
39
+ // STEP 7: Load application modules
40
+ // devLogInfo("Loading application modules...");
41
+ await filesOrchestrator.moduleLoader.loadAll();
42
+ // STEP 9: Initialize layer executor
43
+ // devLogInfo("Initializing layer executor...");
44
+ this.layerExecutor = new LayerExecutor(filesOrchestrator.getDependencyGraph(), filesOrchestrator.specialFilesCollector, filesOrchestrator.moduleLoader);
45
+ // Mark as running
46
+ this.running = true;
47
+ const duration = performance.now() - now;
48
+ devLogReady(`Development Server is ready in ${colors.greenBright(parseDuration(duration))}`);
49
+ // Generate type definitions in background (non-blocking)
50
+ // Runs after server ready for fast startup
51
+ // typeGenerator.generateAll();
52
+ typeGenerator.executeGenerateAllCommand();
53
+ // Start health checks (non-blocking)
54
+ filesOrchestrator.startCheckingHealth();
55
+ }
56
+ catch (error) {
57
+ devServeLog(colors.redBright(`❌ Failed to start Development Server: ${error}`));
58
+ await this.shutdown();
59
+ throw error;
60
+ }
61
+ }
62
+ /**
63
+ * Setup event listeners for file changes
64
+ */
65
+ setupEventListeners() {
66
+ // Listen to batch completion events from FileEventHandler
67
+ events.on("dev-server:batch-complete", (batch) => {
68
+ this.handleBatchComplete(batch);
69
+ });
70
+ }
71
+ /**
72
+ * Handle batch completion event
73
+ * Triggered when a batch of files has been processed
74
+ */
75
+ async handleBatchComplete(batch) {
76
+ // Only execute reload if server is running (skip during initial startup)
77
+ if (!this.running || !this.layerExecutor) {
78
+ return;
79
+ }
80
+ if (batch.changed.length > 0) {
81
+ // if they are the same, then ignore the trigger
82
+ batch.changed = (await Promise.all(batch.changed.map(async (relativePath) => {
83
+ const file = filesOrchestrator.files.get(relativePath);
84
+ if (!file)
85
+ return null;
86
+ const content = await getFileAsync(file.absolutePath);
87
+ if (content.trim() === file.source) {
88
+ return null;
89
+ }
90
+ file.source = content;
91
+ return relativePath;
92
+ }))).filter((file) => file !== null);
93
+ }
94
+ // Get all changed files (added + changed + deleted)
95
+ const allChangedPaths = [...batch.added, ...batch.changed, ...batch.deleted];
96
+ if (allChangedPaths.length === 0) {
97
+ return;
98
+ }
99
+ // Delegate to layer executor for batch reload
100
+ try {
101
+ await this.layerExecutor.executeBatchReload([...batch.added, ...batch.changed], filesOrchestrator.getFiles(), batch.deleted);
102
+ // Regenerate types if config files changed
103
+ typeGenerator.executeTypingsGenerator([...batch.added, ...batch.changed]);
104
+ filesOrchestrator.checkHealth({
105
+ added: batch.added,
106
+ changed: batch.changed,
107
+ deleted: batch.deleted,
108
+ });
109
+ }
110
+ catch (error) {
111
+ devServeLog(colors.redBright(`❌ Failed to execute batch reload: ${error}`));
112
+ }
113
+ }
114
+ /**
115
+ * Gracefully shutdown the development server
116
+ */
117
+ async shutdown() {
118
+ console.log("Shutting down...");
119
+ if (!this.running) {
120
+ return;
121
+ }
122
+ devServeLog(colors.redBright("🛑 Shutting down Development Server..."));
123
+ this.running = false;
124
+ // Shutdown connectors in reverse priority order
125
+ await connectorsManager.shutdown();
126
+ devServeLog(colors.greenBright("✅ Development Server stopped"));
127
+ }
128
+ /**
129
+ * Check if server is running
130
+ */
131
+ isRunning() {
132
+ return this.running;
133
+ }
134
+ /**
135
+ * Get module loader
136
+ */
137
+ getModuleLoader() {
138
+ return this.moduleLoader;
139
+ }
140
+ }
141
+ function parseDuration(diffInMilliseconds) {
142
+ if (diffInMilliseconds < 1000) {
143
+ return `${diffInMilliseconds.toFixed(2)}ms`;
144
+ }
145
+ if (diffInMilliseconds > 60_000) {
146
+ return `${(diffInMilliseconds / 60_000).toFixed(2)}m`;
147
+ }
148
+ return `${(diffInMilliseconds / 1000).toFixed(2)}s`;
149
+ }export{DevelopmentServer};//# sourceMappingURL=development-server.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"development-server.js","sources":["../../src/dev2-server/development-server.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ export declare const DEV_SERVER_EVENTS: {
2
+ MANIFEST_NOT_FOUND: string;
3
+ FILE_READY: string;
4
+ };
5
+ //# sourceMappingURL=events.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/dev2-server/events.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,iBAAiB;;;CAG7B,CAAC"}