@warlock.js/core 3.0.40 → 4.0.2

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 (351) hide show
  1. package/cjs/code-quality/config.js +1 -7
  2. package/cjs/code-quality/config.js.map +1 -1
  3. package/cjs/code-quality/issue-tracker.js +1 -119
  4. package/cjs/code-quality/issue-tracker.js.map +1 -1
  5. package/cjs/dev2-server/config-handlers.d.ts +8 -0
  6. package/cjs/dev2-server/config-handlers.d.ts.map +1 -0
  7. package/cjs/dev2-server/config-handlers.js +56 -0
  8. package/cjs/dev2-server/config-handlers.js.map +1 -0
  9. package/cjs/dev2-server/config-loader.d.ts +61 -0
  10. package/cjs/dev2-server/config-loader.d.ts.map +1 -0
  11. package/cjs/dev2-server/config-loader.js +122 -0
  12. package/cjs/dev2-server/config-loader.js.map +1 -0
  13. package/cjs/dev2-server/connectors/base-connector.d.ts +49 -0
  14. package/cjs/dev2-server/connectors/base-connector.d.ts.map +1 -0
  15. package/cjs/dev2-server/connectors/base-connector.js +48 -0
  16. package/cjs/dev2-server/connectors/base-connector.js.map +1 -0
  17. package/cjs/dev2-server/connectors/cache-connector.d.ts +23 -0
  18. package/cjs/dev2-server/connectors/cache-connector.d.ts.map +1 -0
  19. package/cjs/dev2-server/connectors/cache-connector.js +35 -0
  20. package/cjs/dev2-server/connectors/cache-connector.js.map +1 -0
  21. package/cjs/dev2-server/connectors/database-connector.d.ts +23 -0
  22. package/cjs/dev2-server/connectors/database-connector.d.ts.map +1 -0
  23. package/cjs/dev2-server/connectors/database-connector.js +46 -0
  24. package/cjs/dev2-server/connectors/database-connector.js.map +1 -0
  25. package/cjs/dev2-server/connectors/http-connector.d.ts +29 -0
  26. package/cjs/dev2-server/connectors/http-connector.d.ts.map +1 -0
  27. package/cjs/dev2-server/connectors/http-connector.js +71 -0
  28. package/cjs/dev2-server/connectors/http-connector.js.map +1 -0
  29. package/cjs/dev2-server/connectors/index.d.ts +10 -0
  30. package/cjs/dev2-server/connectors/index.d.ts.map +1 -0
  31. package/cjs/dev2-server/connectors/types.d.ts +49 -0
  32. package/cjs/dev2-server/connectors/types.d.ts.map +1 -0
  33. package/cjs/dev2-server/connectors/types.js +9 -0
  34. package/cjs/dev2-server/connectors/types.js.map +1 -0
  35. package/cjs/dev2-server/dependency-graph.d.ts +93 -0
  36. package/cjs/dev2-server/dependency-graph.d.ts.map +1 -0
  37. package/cjs/dev2-server/dependency-graph.js +266 -0
  38. package/cjs/dev2-server/dependency-graph.js.map +1 -0
  39. package/cjs/dev2-server/dev-logger.d.ts +14 -0
  40. package/cjs/dev2-server/dev-logger.d.ts.map +1 -0
  41. package/cjs/dev2-server/dev-logger.js +105 -0
  42. package/cjs/dev2-server/dev-logger.js.map +1 -0
  43. package/cjs/dev2-server/development-server.d.ts +97 -0
  44. package/cjs/dev2-server/development-server.d.ts.map +1 -0
  45. package/cjs/dev2-server/development-server.js +224 -0
  46. package/cjs/dev2-server/development-server.js.map +1 -0
  47. package/cjs/dev2-server/events.d.ts +5 -0
  48. package/cjs/dev2-server/events.d.ts.map +1 -0
  49. package/cjs/dev2-server/events.js +4 -0
  50. package/cjs/dev2-server/events.js.map +1 -0
  51. package/cjs/dev2-server/file-event-handler.d.ts +58 -0
  52. package/cjs/dev2-server/file-event-handler.d.ts.map +1 -0
  53. package/cjs/dev2-server/file-event-handler.js +140 -0
  54. package/cjs/dev2-server/file-event-handler.js.map +1 -0
  55. package/cjs/dev2-server/file-manager.d.ts +115 -0
  56. package/cjs/dev2-server/file-manager.d.ts.map +1 -0
  57. package/cjs/dev2-server/file-manager.js +319 -0
  58. package/cjs/dev2-server/file-manager.js.map +1 -0
  59. package/cjs/dev2-server/file-operations.d.ts +54 -0
  60. package/cjs/dev2-server/file-operations.d.ts.map +1 -0
  61. package/cjs/dev2-server/file-operations.js +191 -0
  62. package/cjs/dev2-server/file-operations.js.map +1 -0
  63. package/cjs/dev2-server/files-orchestrator.d.ts +88 -0
  64. package/cjs/dev2-server/files-orchestrator.d.ts.map +1 -0
  65. package/cjs/dev2-server/files-orchestrator.js +273 -0
  66. package/cjs/dev2-server/files-orchestrator.js.map +1 -0
  67. package/cjs/dev2-server/files-watcher.d.ts +53 -0
  68. package/cjs/dev2-server/files-watcher.d.ts.map +1 -0
  69. package/cjs/dev2-server/files-watcher.js +88 -0
  70. package/cjs/dev2-server/files-watcher.js.map +1 -0
  71. package/cjs/dev2-server/flags.d.ts +10 -0
  72. package/cjs/dev2-server/flags.d.ts.map +1 -0
  73. package/cjs/dev2-server/flags.js +9 -0
  74. package/cjs/dev2-server/flags.js.map +1 -0
  75. package/cjs/dev2-server/health-checker.d.ts +3 -0
  76. package/cjs/dev2-server/health-checker.d.ts.map +1 -0
  77. package/cjs/dev2-server/health-checker.js +2 -0
  78. package/cjs/dev2-server/health-checker.js.map +1 -0
  79. package/cjs/dev2-server/import-transformer.d.ts +16 -0
  80. package/cjs/dev2-server/import-transformer.d.ts.map +1 -0
  81. package/cjs/dev2-server/import-transformer.js +248 -0
  82. package/cjs/dev2-server/import-transformer.js.map +1 -0
  83. package/cjs/dev2-server/index.d.ts +1 -0
  84. package/cjs/dev2-server/index.d.ts.map +1 -0
  85. package/cjs/dev2-server/layer-executor.d.ts +64 -0
  86. package/cjs/dev2-server/layer-executor.d.ts.map +1 -0
  87. package/cjs/dev2-server/layer-executor.js +292 -0
  88. package/cjs/dev2-server/layer-executor.js.map +1 -0
  89. package/cjs/dev2-server/manifest-manager.d.ts +80 -0
  90. package/cjs/dev2-server/manifest-manager.d.ts.map +1 -0
  91. package/cjs/dev2-server/manifest-manager.js +107 -0
  92. package/cjs/dev2-server/manifest-manager.js.map +1 -0
  93. package/cjs/dev2-server/module-loader.d.ts +100 -0
  94. package/cjs/dev2-server/module-loader.d.ts.map +1 -0
  95. package/cjs/dev2-server/module-loader.js +228 -0
  96. package/cjs/dev2-server/module-loader.js.map +1 -0
  97. package/cjs/dev2-server/package-json-manager.d.ts +16 -0
  98. package/cjs/dev2-server/package-json-manager.d.ts.map +1 -0
  99. package/cjs/dev2-server/package-json-manager.js +20 -0
  100. package/cjs/dev2-server/package-json-manager.js.map +1 -0
  101. package/cjs/dev2-server/parse-imports.d.ts +8 -0
  102. package/cjs/dev2-server/parse-imports.d.ts.map +1 -0
  103. package/cjs/dev2-server/parse-imports.js +322 -0
  104. package/cjs/dev2-server/parse-imports.js.map +1 -0
  105. package/cjs/dev2-server/path.d.ts +39 -0
  106. package/cjs/dev2-server/path.d.ts.map +1 -0
  107. package/cjs/dev2-server/path.js +56 -0
  108. package/cjs/dev2-server/path.js.map +1 -0
  109. package/cjs/dev2-server/runtime-import-helper.d.ts +9 -0
  110. package/cjs/dev2-server/runtime-import-helper.d.ts.map +1 -0
  111. package/cjs/dev2-server/runtime-import-helper.js +157 -0
  112. package/cjs/dev2-server/runtime-import-helper.js.map +1 -0
  113. package/cjs/dev2-server/special-files-collector.d.ts +114 -0
  114. package/cjs/dev2-server/special-files-collector.d.ts.map +1 -0
  115. package/cjs/dev2-server/special-files-collector.js +212 -0
  116. package/cjs/dev2-server/special-files-collector.js.map +1 -0
  117. package/cjs/dev2-server/start-development-server.d.ts +7 -0
  118. package/cjs/dev2-server/start-development-server.d.ts.map +1 -0
  119. package/cjs/dev2-server/start-development-server.js +21 -0
  120. package/cjs/dev2-server/start-development-server.js.map +1 -0
  121. package/cjs/dev2-server/transpile-file.d.ts +10 -0
  122. package/cjs/dev2-server/transpile-file.d.ts.map +1 -0
  123. package/cjs/dev2-server/transpile-file.js +31 -0
  124. package/cjs/dev2-server/transpile-file.js.map +1 -0
  125. package/cjs/dev2-server/tsconfig-manager.d.ts +45 -0
  126. package/cjs/dev2-server/tsconfig-manager.d.ts.map +1 -0
  127. package/cjs/dev2-server/tsconfig-manager.js +105 -0
  128. package/cjs/dev2-server/tsconfig-manager.js.map +1 -0
  129. package/cjs/dev2-server/types.d.ts +16 -0
  130. package/cjs/dev2-server/types.d.ts.map +1 -0
  131. package/cjs/dev2-server/utils.d.ts +8 -0
  132. package/cjs/dev2-server/utils.d.ts.map +1 -0
  133. package/cjs/dev2-server/utils.js +28 -0
  134. package/cjs/dev2-server/utils.js.map +1 -0
  135. package/cjs/router/route-registry.d.ts +4 -0
  136. package/cjs/router/route-registry.d.ts.map +1 -1
  137. package/cjs/router/route-registry.js +26 -7
  138. package/cjs/router/route-registry.js.map +1 -1
  139. package/cjs/router/router.d.ts +13 -8
  140. package/cjs/router/router.d.ts.map +1 -1
  141. package/cjs/router/router.js +73 -35
  142. package/cjs/router/router.js.map +1 -1
  143. package/cjs/router/types.d.ts +10 -2
  144. package/cjs/router/types.d.ts.map +1 -1
  145. package/cjs/starters/start-cli-server.js +1 -1
  146. package/cjs/starters/start-cli-server.js.map +1 -1
  147. package/cjs/starters/start-http-server.d.ts.map +1 -1
  148. package/cjs/starters/start-http-server.js +4 -99
  149. package/cjs/starters/start-http-server.js.map +1 -1
  150. package/esm/code-quality/config.js +1 -7
  151. package/esm/code-quality/config.js.map +1 -1
  152. package/esm/code-quality/issue-tracker.js +1 -119
  153. package/esm/code-quality/issue-tracker.js.map +1 -1
  154. package/esm/dev2-server/config-handlers.d.ts +8 -0
  155. package/esm/dev2-server/config-handlers.d.ts.map +1 -0
  156. package/esm/dev2-server/config-handlers.js +56 -0
  157. package/esm/dev2-server/config-handlers.js.map +1 -0
  158. package/esm/dev2-server/config-loader.d.ts +61 -0
  159. package/esm/dev2-server/config-loader.d.ts.map +1 -0
  160. package/esm/dev2-server/config-loader.js +122 -0
  161. package/esm/dev2-server/config-loader.js.map +1 -0
  162. package/esm/dev2-server/connectors/base-connector.d.ts +49 -0
  163. package/esm/dev2-server/connectors/base-connector.d.ts.map +1 -0
  164. package/esm/dev2-server/connectors/base-connector.js +48 -0
  165. package/esm/dev2-server/connectors/base-connector.js.map +1 -0
  166. package/esm/dev2-server/connectors/cache-connector.d.ts +23 -0
  167. package/esm/dev2-server/connectors/cache-connector.d.ts.map +1 -0
  168. package/esm/dev2-server/connectors/cache-connector.js +35 -0
  169. package/esm/dev2-server/connectors/cache-connector.js.map +1 -0
  170. package/esm/dev2-server/connectors/database-connector.d.ts +23 -0
  171. package/esm/dev2-server/connectors/database-connector.d.ts.map +1 -0
  172. package/esm/dev2-server/connectors/database-connector.js +46 -0
  173. package/esm/dev2-server/connectors/database-connector.js.map +1 -0
  174. package/esm/dev2-server/connectors/http-connector.d.ts +29 -0
  175. package/esm/dev2-server/connectors/http-connector.d.ts.map +1 -0
  176. package/esm/dev2-server/connectors/http-connector.js +71 -0
  177. package/esm/dev2-server/connectors/http-connector.js.map +1 -0
  178. package/esm/dev2-server/connectors/index.d.ts +10 -0
  179. package/esm/dev2-server/connectors/index.d.ts.map +1 -0
  180. package/esm/dev2-server/connectors/types.d.ts +49 -0
  181. package/esm/dev2-server/connectors/types.d.ts.map +1 -0
  182. package/esm/dev2-server/connectors/types.js +9 -0
  183. package/esm/dev2-server/connectors/types.js.map +1 -0
  184. package/esm/dev2-server/dependency-graph.d.ts +93 -0
  185. package/esm/dev2-server/dependency-graph.d.ts.map +1 -0
  186. package/esm/dev2-server/dependency-graph.js +266 -0
  187. package/esm/dev2-server/dependency-graph.js.map +1 -0
  188. package/esm/dev2-server/dev-logger.d.ts +14 -0
  189. package/esm/dev2-server/dev-logger.d.ts.map +1 -0
  190. package/esm/dev2-server/dev-logger.js +105 -0
  191. package/esm/dev2-server/dev-logger.js.map +1 -0
  192. package/esm/dev2-server/development-server.d.ts +97 -0
  193. package/esm/dev2-server/development-server.d.ts.map +1 -0
  194. package/esm/dev2-server/development-server.js +224 -0
  195. package/esm/dev2-server/development-server.js.map +1 -0
  196. package/esm/dev2-server/events.d.ts +5 -0
  197. package/esm/dev2-server/events.d.ts.map +1 -0
  198. package/esm/dev2-server/events.js +4 -0
  199. package/esm/dev2-server/events.js.map +1 -0
  200. package/esm/dev2-server/file-event-handler.d.ts +58 -0
  201. package/esm/dev2-server/file-event-handler.d.ts.map +1 -0
  202. package/esm/dev2-server/file-event-handler.js +140 -0
  203. package/esm/dev2-server/file-event-handler.js.map +1 -0
  204. package/esm/dev2-server/file-manager.d.ts +115 -0
  205. package/esm/dev2-server/file-manager.d.ts.map +1 -0
  206. package/esm/dev2-server/file-manager.js +319 -0
  207. package/esm/dev2-server/file-manager.js.map +1 -0
  208. package/esm/dev2-server/file-operations.d.ts +54 -0
  209. package/esm/dev2-server/file-operations.d.ts.map +1 -0
  210. package/esm/dev2-server/file-operations.js +191 -0
  211. package/esm/dev2-server/file-operations.js.map +1 -0
  212. package/esm/dev2-server/files-orchestrator.d.ts +88 -0
  213. package/esm/dev2-server/files-orchestrator.d.ts.map +1 -0
  214. package/esm/dev2-server/files-orchestrator.js +273 -0
  215. package/esm/dev2-server/files-orchestrator.js.map +1 -0
  216. package/esm/dev2-server/files-watcher.d.ts +53 -0
  217. package/esm/dev2-server/files-watcher.d.ts.map +1 -0
  218. package/esm/dev2-server/files-watcher.js +88 -0
  219. package/esm/dev2-server/files-watcher.js.map +1 -0
  220. package/esm/dev2-server/flags.d.ts +10 -0
  221. package/esm/dev2-server/flags.d.ts.map +1 -0
  222. package/esm/dev2-server/flags.js +9 -0
  223. package/esm/dev2-server/flags.js.map +1 -0
  224. package/esm/dev2-server/health-checker.d.ts +3 -0
  225. package/esm/dev2-server/health-checker.d.ts.map +1 -0
  226. package/esm/dev2-server/health-checker.js +2 -0
  227. package/esm/dev2-server/health-checker.js.map +1 -0
  228. package/esm/dev2-server/import-transformer.d.ts +16 -0
  229. package/esm/dev2-server/import-transformer.d.ts.map +1 -0
  230. package/esm/dev2-server/import-transformer.js +248 -0
  231. package/esm/dev2-server/import-transformer.js.map +1 -0
  232. package/esm/dev2-server/index.d.ts +1 -0
  233. package/esm/dev2-server/index.d.ts.map +1 -0
  234. package/esm/dev2-server/layer-executor.d.ts +64 -0
  235. package/esm/dev2-server/layer-executor.d.ts.map +1 -0
  236. package/esm/dev2-server/layer-executor.js +292 -0
  237. package/esm/dev2-server/layer-executor.js.map +1 -0
  238. package/esm/dev2-server/manifest-manager.d.ts +80 -0
  239. package/esm/dev2-server/manifest-manager.d.ts.map +1 -0
  240. package/esm/dev2-server/manifest-manager.js +107 -0
  241. package/esm/dev2-server/manifest-manager.js.map +1 -0
  242. package/esm/dev2-server/module-loader.d.ts +100 -0
  243. package/esm/dev2-server/module-loader.d.ts.map +1 -0
  244. package/esm/dev2-server/module-loader.js +228 -0
  245. package/esm/dev2-server/module-loader.js.map +1 -0
  246. package/esm/dev2-server/package-json-manager.d.ts +16 -0
  247. package/esm/dev2-server/package-json-manager.d.ts.map +1 -0
  248. package/esm/dev2-server/package-json-manager.js +20 -0
  249. package/esm/dev2-server/package-json-manager.js.map +1 -0
  250. package/esm/dev2-server/parse-imports.d.ts +8 -0
  251. package/esm/dev2-server/parse-imports.d.ts.map +1 -0
  252. package/esm/dev2-server/parse-imports.js +322 -0
  253. package/esm/dev2-server/parse-imports.js.map +1 -0
  254. package/esm/dev2-server/path.d.ts +39 -0
  255. package/esm/dev2-server/path.d.ts.map +1 -0
  256. package/esm/dev2-server/path.js +56 -0
  257. package/esm/dev2-server/path.js.map +1 -0
  258. package/esm/dev2-server/runtime-import-helper.d.ts +9 -0
  259. package/esm/dev2-server/runtime-import-helper.d.ts.map +1 -0
  260. package/esm/dev2-server/runtime-import-helper.js +157 -0
  261. package/esm/dev2-server/runtime-import-helper.js.map +1 -0
  262. package/esm/dev2-server/special-files-collector.d.ts +114 -0
  263. package/esm/dev2-server/special-files-collector.d.ts.map +1 -0
  264. package/esm/dev2-server/special-files-collector.js +212 -0
  265. package/esm/dev2-server/special-files-collector.js.map +1 -0
  266. package/esm/dev2-server/start-development-server.d.ts +7 -0
  267. package/esm/dev2-server/start-development-server.d.ts.map +1 -0
  268. package/esm/dev2-server/start-development-server.js +21 -0
  269. package/esm/dev2-server/start-development-server.js.map +1 -0
  270. package/esm/dev2-server/transpile-file.d.ts +10 -0
  271. package/esm/dev2-server/transpile-file.d.ts.map +1 -0
  272. package/esm/dev2-server/transpile-file.js +31 -0
  273. package/esm/dev2-server/transpile-file.js.map +1 -0
  274. package/esm/dev2-server/tsconfig-manager.d.ts +45 -0
  275. package/esm/dev2-server/tsconfig-manager.d.ts.map +1 -0
  276. package/esm/dev2-server/tsconfig-manager.js +105 -0
  277. package/esm/dev2-server/tsconfig-manager.js.map +1 -0
  278. package/esm/dev2-server/types.d.ts +16 -0
  279. package/esm/dev2-server/types.d.ts.map +1 -0
  280. package/esm/dev2-server/utils.d.ts +8 -0
  281. package/esm/dev2-server/utils.d.ts.map +1 -0
  282. package/esm/dev2-server/utils.js +28 -0
  283. package/esm/dev2-server/utils.js.map +1 -0
  284. package/esm/router/route-registry.d.ts +4 -0
  285. package/esm/router/route-registry.d.ts.map +1 -1
  286. package/esm/router/route-registry.js +26 -7
  287. package/esm/router/route-registry.js.map +1 -1
  288. package/esm/router/router.d.ts +13 -8
  289. package/esm/router/router.d.ts.map +1 -1
  290. package/esm/router/router.js +73 -35
  291. package/esm/router/router.js.map +1 -1
  292. package/esm/router/types.d.ts +10 -2
  293. package/esm/router/types.d.ts.map +1 -1
  294. package/esm/starters/start-cli-server.js +1 -1
  295. package/esm/starters/start-cli-server.js.map +1 -1
  296. package/esm/starters/start-http-server.d.ts.map +1 -1
  297. package/esm/starters/start-http-server.js +4 -99
  298. package/esm/starters/start-http-server.js.map +1 -1
  299. package/package.json +3 -3
  300. package/cjs/code-quality/checkers/eslint-checker.js +0 -39
  301. package/cjs/code-quality/checkers/eslint-checker.js.map +0 -1
  302. package/cjs/code-quality/checkers/typescript-checker.js +0 -76
  303. package/cjs/code-quality/checkers/typescript-checker.js.map +0 -1
  304. package/cjs/code-quality/formatters/eslint-formatter.js +0 -56
  305. package/cjs/code-quality/formatters/eslint-formatter.js.map +0 -1
  306. package/cjs/code-quality/formatters/summary-formatter.js +0 -102
  307. package/cjs/code-quality/formatters/summary-formatter.js.map +0 -1
  308. package/cjs/code-quality/formatters/typescript-formatter.js +0 -64
  309. package/cjs/code-quality/formatters/typescript-formatter.js.map +0 -1
  310. package/cjs/code-quality/project-scanner.js +0 -78
  311. package/cjs/code-quality/project-scanner.js.map +0 -1
  312. package/cjs/code-quality/single-file-checker.js +0 -153
  313. package/cjs/code-quality/single-file-checker.js.map +0 -1
  314. package/cjs/dev-server/file-health.d.ts +0 -9
  315. package/cjs/dev-server/file-health.d.ts.map +0 -1
  316. package/cjs/dev-server/file-manager.d.ts +0 -39
  317. package/cjs/dev-server/file-manager.d.ts.map +0 -1
  318. package/cjs/dev-server/files-orchestrator.d.ts +0 -1
  319. package/cjs/dev-server/files-orchestrator.d.ts.map +0 -1
  320. package/cjs/dev-server/types.d.ts +0 -2
  321. package/cjs/dev-server/types.d.ts.map +0 -1
  322. package/cjs/starters/http-server-starter.js +0 -34
  323. package/cjs/starters/http-server-starter.js.map +0 -1
  324. package/cjs/utils/internal.js +0 -3
  325. package/cjs/utils/internal.js.map +0 -1
  326. package/esm/code-quality/checkers/eslint-checker.js +0 -39
  327. package/esm/code-quality/checkers/eslint-checker.js.map +0 -1
  328. package/esm/code-quality/checkers/typescript-checker.js +0 -76
  329. package/esm/code-quality/checkers/typescript-checker.js.map +0 -1
  330. package/esm/code-quality/formatters/eslint-formatter.js +0 -56
  331. package/esm/code-quality/formatters/eslint-formatter.js.map +0 -1
  332. package/esm/code-quality/formatters/summary-formatter.js +0 -102
  333. package/esm/code-quality/formatters/summary-formatter.js.map +0 -1
  334. package/esm/code-quality/formatters/typescript-formatter.js +0 -64
  335. package/esm/code-quality/formatters/typescript-formatter.js.map +0 -1
  336. package/esm/code-quality/project-scanner.js +0 -78
  337. package/esm/code-quality/project-scanner.js.map +0 -1
  338. package/esm/code-quality/single-file-checker.js +0 -153
  339. package/esm/code-quality/single-file-checker.js.map +0 -1
  340. package/esm/dev-server/file-health.d.ts +0 -9
  341. package/esm/dev-server/file-health.d.ts.map +0 -1
  342. package/esm/dev-server/file-manager.d.ts +0 -39
  343. package/esm/dev-server/file-manager.d.ts.map +0 -1
  344. package/esm/dev-server/files-orchestrator.d.ts +0 -1
  345. package/esm/dev-server/files-orchestrator.d.ts.map +0 -1
  346. package/esm/dev-server/types.d.ts +0 -2
  347. package/esm/dev-server/types.d.ts.map +0 -1
  348. package/esm/starters/http-server-starter.js +0 -34
  349. package/esm/starters/http-server-starter.js.map +0 -1
  350. package/esm/utils/internal.js +0 -3
  351. package/esm/utils/internal.js.map +0 -1
@@ -0,0 +1,292 @@
1
+ import {devLogHMR}from'./dev-logger.js';/**
2
+ * LayerExecutor handles the execution of file reloads based on their layer type
3
+ *
4
+ * Strategy:
5
+ * 1. Determine reload type (FSR or HMR) based on invalidation chain
6
+ * 2. For FSR: Restart connectors if needed, reload special files
7
+ * 3. For HMR: Clear module cache, reload affected modules
8
+ */
9
+ class LayerExecutor {
10
+ dependencyGraph;
11
+ specialFilesCollector;
12
+ connectors;
13
+ moduleLoader;
14
+ configLoader;
15
+ constructor(dependencyGraph, specialFilesCollector, connectors, moduleLoader, configLoader) {
16
+ this.dependencyGraph = dependencyGraph;
17
+ this.specialFilesCollector = specialFilesCollector;
18
+ this.connectors = connectors;
19
+ this.moduleLoader = moduleLoader;
20
+ this.configLoader = configLoader;
21
+ }
22
+ /**
23
+ * Execute batch reload for multiple changed files
24
+ * @param changedPaths Array of relative paths that changed
25
+ * @param filesMap Map of all FileManager instances
26
+ */
27
+ async executeBatchReload(changedPaths, filesMap) {
28
+ if (changedPaths.length === 0) {
29
+ return;
30
+ }
31
+ // Build combined invalidation chain for all changed files
32
+ const allInvalidatedFiles = new Set();
33
+ const fsrFiles = [];
34
+ const hmrFiles = [];
35
+ for (const relativePath of changedPaths) {
36
+ const fileManager = filesMap.get(relativePath);
37
+ if (!fileManager)
38
+ continue;
39
+ // Get invalidation chain for this file
40
+ const invalidationChain = this.dependencyGraph.getInvalidationChain(relativePath);
41
+ // Add to combined set
42
+ invalidationChain.forEach(file => allInvalidatedFiles.add(file));
43
+ // Determine strategy for this file
44
+ const strategy = this.determineReloadStrategy(invalidationChain, filesMap);
45
+ if (strategy === "FSR") {
46
+ fsrFiles.push(relativePath);
47
+ }
48
+ else {
49
+ hmrFiles.push(relativePath);
50
+ }
51
+ }
52
+ try {
53
+ if (hmrFiles.length > 0 && fsrFiles.length === 0) {
54
+ if (hmrFiles.length === 1) {
55
+ const dependentCount = this.dependencyGraph.getInvalidationChain(hmrFiles[0]).length - 1;
56
+ devLogHMR(hmrFiles[0], dependentCount > 0 ? dependentCount : undefined);
57
+ }
58
+ else {
59
+ hmrFiles.forEach(file => {
60
+ const dependentCount = this.dependencyGraph.getInvalidationChain(file).length - 1;
61
+ devLogHMR(file, dependentCount > 0 ? dependentCount : undefined);
62
+ });
63
+ }
64
+ }
65
+ }
66
+ catch (error) {
67
+ console.log("ERRor in devLogHMR: ", error);
68
+ }
69
+ try {
70
+ // Execute reload once for all files
71
+ const invalidationChain = Array.from(allInvalidatedFiles);
72
+ if (fsrFiles.length > 0) {
73
+ // If any file requires FSR, do FSR for all
74
+ const firstFsrFile = filesMap.get(fsrFiles[0]);
75
+ await this.executeFullServerRestart(firstFsrFile, invalidationChain, filesMap);
76
+ }
77
+ else {
78
+ // All files are HMR
79
+ const firstHmrFile = filesMap.get(hmrFiles[0]);
80
+ await this.executeHotModuleReplacement(firstHmrFile, invalidationChain, filesMap, hmrFiles);
81
+ }
82
+ }
83
+ catch (error) {
84
+ console.log("ERRor in executeFullServerRestart: ", error);
85
+ }
86
+ }
87
+ /**
88
+ * Determine if we need FSR or HMR
89
+ * FSR is needed if ANY file in the invalidation chain is FSR layer
90
+ */
91
+ determineReloadStrategy(invalidationChain, filesMap) {
92
+ for (const relativePath of invalidationChain) {
93
+ const file = filesMap.get(relativePath);
94
+ if (file && file.layer === "FSR") {
95
+ return "FSR";
96
+ }
97
+ }
98
+ return "HMR";
99
+ }
100
+ /**
101
+ * Execute Full Server Restart
102
+ * This happens when config, routes, or other FSR layer files change
103
+ */
104
+ async executeFullServerRestart(changedFile, invalidationChain, filesMap) {
105
+ // Step 1: Handle config files specially
106
+ const configFiles = invalidationChain
107
+ .map(path => filesMap.get(path))
108
+ .filter((file) => file !== undefined && file.type === "config");
109
+ if (configFiles.length > 0) {
110
+ // Reload config files first
111
+ for (const configFile of configFiles) {
112
+ await this.configLoader.reloadConfig(configFile);
113
+ }
114
+ // Restart only affected connectors
115
+ await this.restartAffectedConnectors(invalidationChain);
116
+ // Clear module cache for invalidation chain
117
+ this.clearModuleCacheForChain(invalidationChain, filesMap);
118
+ // Reload special files if affected
119
+ await this.reloadAffectedSpecialFiles(invalidationChain);
120
+ return;
121
+ }
122
+ // Step 2: For non-config FSR (routes, etc.), restart all connectors
123
+ await this.restartAffectedConnectors(invalidationChain);
124
+ // Step 3: Clear module cache for invalidation chain
125
+ this.clearModuleCacheForChain(invalidationChain, filesMap);
126
+ // Step 4: Reload special files if affected
127
+ await this.reloadAffectedSpecialFiles(invalidationChain);
128
+ }
129
+ /**
130
+ * Execute Hot Module Replacement
131
+ * This happens when only HMR layer files (controllers, services, etc.) change
132
+ */
133
+ async executeHotModuleReplacement(changedFile, invalidationChain, filesMap, hmrFiles) {
134
+ // Step 1: Clear module cache for invalidation chain
135
+ this.clearModuleCacheForChain(invalidationChain, filesMap);
136
+ // Step 2: Reload affected modules
137
+ await this.reloadAffectedModules(invalidationChain, filesMap);
138
+ await this.restartAffectedConnectors(hmrFiles);
139
+ }
140
+ /**
141
+ * Restart connectors that are affected by the changed files
142
+ */
143
+ async restartAffectedConnectors(affectedFiles) {
144
+ const connectorsToRestart = this.connectors.filter(connector => connector.shouldRestart(affectedFiles));
145
+ if (connectorsToRestart.length === 0) {
146
+ return;
147
+ }
148
+ // Restart in priority order
149
+ for (const connector of connectorsToRestart) {
150
+ connector.restart();
151
+ }
152
+ }
153
+ /**
154
+ * Clear Node.js module cache for the invalidation chain
155
+ */
156
+ clearModuleCacheForChain(invalidationChain, filesMap) {
157
+ for (const relativePath of invalidationChain) {
158
+ const file = filesMap.get(relativePath);
159
+ if (file) {
160
+ this.moduleLoader.clearModuleCache(file.absolutePath);
161
+ // Update module version for HMR cache busting
162
+ __updateModuleVersion(`./${file.cachePath}`, Date.now());
163
+ }
164
+ }
165
+ }
166
+ /**
167
+ * Reload special files that are affected by the change
168
+ * This includes main, routes, events, locales
169
+ * Special files are reloaded if they are in the invalidation chain OR if they depend on files in the chain
170
+ */
171
+ async reloadAffectedSpecialFiles(invalidationChain) {
172
+ // Helper to check if a file is affected (either in chain or depends on chain)
173
+ const isAffected = (file) => {
174
+ // Direct match: file itself is in the chain
175
+ if (invalidationChain.includes(file.relativePath)) {
176
+ return true;
177
+ }
178
+ // Indirect match: file depends on something in the chain
179
+ for (const dep of file.dependencies) {
180
+ if (invalidationChain.includes(dep)) {
181
+ return true;
182
+ }
183
+ }
184
+ return false;
185
+ };
186
+ // Check which special files are affected
187
+ const affectedMainFiles = this.specialFilesCollector
188
+ .getMainFiles()
189
+ .filter(isAffected);
190
+ const affectedRouteFiles = this.specialFilesCollector
191
+ .getRouteFiles()
192
+ .filter(isAffected);
193
+ const affectedEventFiles = this.specialFilesCollector
194
+ .getEventFiles()
195
+ .filter(isAffected);
196
+ const affectedLocaleFiles = this.specialFilesCollector
197
+ .getLocaleFiles()
198
+ .filter(isAffected);
199
+ // Reload affected special files
200
+ if (affectedMainFiles.length > 0) {
201
+ for (const file of affectedMainFiles) {
202
+ await this.moduleLoader.reloadModule(file);
203
+ }
204
+ }
205
+ if (affectedLocaleFiles.length > 0) {
206
+ for (const file of affectedLocaleFiles) {
207
+ await this.moduleLoader.reloadModule(file);
208
+ }
209
+ }
210
+ if (affectedEventFiles.length > 0) {
211
+ for (const file of affectedEventFiles) {
212
+ await this.moduleLoader.reloadModule(file);
213
+ }
214
+ }
215
+ if (affectedRouteFiles.length > 0) {
216
+ for (const file of affectedRouteFiles) {
217
+ await this.moduleLoader.reloadModule(file);
218
+ }
219
+ }
220
+ }
221
+ /**
222
+ * Reload affected modules (for HMR)
223
+ * Special files (main, routes, events, locales) need to be actively reloaded
224
+ * Other files will be loaded on next import
225
+ */
226
+ async reloadAffectedModules(invalidationChain, filesMap) {
227
+ // Helper to check if a file is affected (either in chain or depends on chain)
228
+ const isAffected = (file) => {
229
+ // Direct match: file itself is in the chain
230
+ if (invalidationChain.includes(file.relativePath)) {
231
+ return true;
232
+ }
233
+ // Indirect match: file depends on something in the chain
234
+ for (const dep of file.dependencies) {
235
+ if (invalidationChain.includes(dep)) {
236
+ return true;
237
+ }
238
+ }
239
+ return false;
240
+ };
241
+ // Check which special files are affected
242
+ const affectedMainFiles = this.specialFilesCollector
243
+ .getMainFiles()
244
+ .filter(isAffected);
245
+ const affectedConfigFiles = this.specialFilesCollector
246
+ .getConfigFiles()
247
+ .filter(isAffected);
248
+ const affectedRouteFiles = this.specialFilesCollector
249
+ .getRouteFiles()
250
+ .filter(isAffected);
251
+ const affectedEventFiles = this.specialFilesCollector
252
+ .getEventFiles()
253
+ .filter(isAffected);
254
+ const affectedLocaleFiles = this.specialFilesCollector
255
+ .getLocaleFiles()
256
+ .filter(isAffected);
257
+ const hasSpecialFiles = affectedMainFiles.length > 0 ||
258
+ affectedRouteFiles.length > 0 ||
259
+ affectedEventFiles.length > 0 ||
260
+ affectedLocaleFiles.length > 0 ||
261
+ affectedConfigFiles.length > 0;
262
+ if (!hasSpecialFiles) {
263
+ return;
264
+ }
265
+ if (affectedConfigFiles.length > 0) {
266
+ for (const file of affectedConfigFiles) {
267
+ await this.configLoader.reloadConfig(file);
268
+ }
269
+ }
270
+ // Reload special files
271
+ if (affectedMainFiles.length > 0) {
272
+ for (const file of affectedMainFiles) {
273
+ await this.moduleLoader.reloadModule(file);
274
+ }
275
+ }
276
+ if (affectedLocaleFiles.length > 0) {
277
+ for (const file of affectedLocaleFiles) {
278
+ await this.moduleLoader.reloadModule(file);
279
+ }
280
+ }
281
+ if (affectedEventFiles.length > 0) {
282
+ for (const file of affectedEventFiles) {
283
+ await this.moduleLoader.reloadModule(file);
284
+ }
285
+ }
286
+ if (affectedRouteFiles.length > 0) {
287
+ for (const file of affectedRouteFiles) {
288
+ await this.moduleLoader.reloadModule(file);
289
+ }
290
+ }
291
+ }
292
+ }export{LayerExecutor};//# sourceMappingURL=layer-executor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"layer-executor.js","sources":["../../src/dev2-server/layer-executor.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -0,0 +1,80 @@
1
+ import { FileManager } from "./file-manager";
2
+ import type { FileManifest } from "./types";
3
+ /**
4
+ * Manifest structure with metadata and files
5
+ */
6
+ export type Manifest = {
7
+ version: string;
8
+ lastBuildTime: number;
9
+ projectHash?: string;
10
+ stats: {
11
+ totalFiles: number;
12
+ totalDependencies: number;
13
+ };
14
+ files: Record<string, FileManifest>;
15
+ };
16
+ export declare class ManifestManager {
17
+ private readonly files;
18
+ /**
19
+ * Manifest data with metadata
20
+ */
21
+ private manifest;
22
+ /**
23
+ * Constructor
24
+ */
25
+ constructor(files: Map<string, FileManager>);
26
+ /**
27
+ * Initialize manifest manager
28
+ * @returns true if manifest exists, false otherwise
29
+ */
30
+ init(): Promise<boolean>;
31
+ /**
32
+ * Save manifest to disk
33
+ */
34
+ save(): Promise<void>;
35
+ /**
36
+ * Get file manifest data
37
+ */
38
+ getFile(filePath: string): FileManifest | undefined;
39
+ /**
40
+ * Check if file exists in manifest
41
+ */
42
+ hasFile(filePath: string): boolean;
43
+ /**
44
+ * Set file manifest data
45
+ */
46
+ setFile(filePath: string, fileManifest: FileManifest): void;
47
+ /**
48
+ * Remove file from manifest
49
+ */
50
+ removeFile(filePath: string): void;
51
+ /**
52
+ * Get all file paths in manifest
53
+ */
54
+ getAllFilePaths(): string[];
55
+ /**
56
+ * Get all file manifests
57
+ */
58
+ getAllFiles(): Record<string, FileManifest>;
59
+ /**
60
+ * Get manifest metadata
61
+ */
62
+ getMetadata(): {
63
+ version: string;
64
+ lastBuildTime: number;
65
+ projectHash: string;
66
+ stats: {
67
+ totalFiles: number;
68
+ totalDependencies: number;
69
+ };
70
+ };
71
+ /**
72
+ * Calculate total dependencies across all files
73
+ */
74
+ private calculateTotalDependencies;
75
+ /**
76
+ * Clear all files from manifest
77
+ */
78
+ clear(): void;
79
+ }
80
+ //# sourceMappingURL=manifest-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manifest-manager.d.ts","sourceRoot":"","sources":["../../src/dev2-server/manifest-manager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAG5C;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE;QACL,UAAU,EAAE,MAAM,CAAC;QACnB,iBAAiB,EAAE,MAAM,CAAC;KAC3B,CAAC;IACF,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;CACrC,CAAC;AAEF,qBAAa,eAAe;IAiBP,OAAO,CAAC,QAAQ,CAAC,KAAK;IAhBzC;;OAEG;IACH,OAAO,CAAC,QAAQ,CAQd;IAEF;;OAEG;gBACiC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC;IAEnE;;;OAGG;IACU,IAAI,IAAI,OAAO,CAAC,OAAO,CAAC;IASrC;;OAEG;IACU,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IASlC;;OAEG;IACI,OAAO,CAAC,QAAQ,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;IAI1D;;OAEG;IACI,OAAO,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAIzC;;OAEG;IACI,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,GAAG,IAAI;IAIlE;;OAEG;IACI,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAIzC;;OAEG;IACI,eAAe,IAAI,MAAM,EAAE;IAIlC;;OAEG;IACI,WAAW,IAAI,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC;IAIlD;;OAEG;IACI,WAAW;;;;;;;;;IASlB;;OAEG;IACH,OAAO,CAAC,0BAA0B;IAOlC;;OAEG;IACI,KAAK,IAAI,IAAI;CAOrB"}
@@ -0,0 +1,107 @@
1
+ import {fileExistsAsync,getJsonFileAsync,putFileAsync}from'@mongez/fs';import {MANIFEST_PATH}from'./flags.js';class ManifestManager {
2
+ files;
3
+ /**
4
+ * Manifest data with metadata
5
+ */
6
+ manifest = {
7
+ version: "1.0.0",
8
+ lastBuildTime: Date.now(),
9
+ stats: {
10
+ totalFiles: 0,
11
+ totalDependencies: 0,
12
+ },
13
+ files: {},
14
+ };
15
+ /**
16
+ * Constructor
17
+ */
18
+ constructor(files) {
19
+ this.files = files;
20
+ }
21
+ /**
22
+ * Initialize manifest manager
23
+ * @returns true if manifest exists, false otherwise
24
+ */
25
+ async init() {
26
+ if (await fileExistsAsync(MANIFEST_PATH)) {
27
+ this.manifest = await getJsonFileAsync(MANIFEST_PATH);
28
+ return true;
29
+ }
30
+ else {
31
+ return false;
32
+ }
33
+ }
34
+ /**
35
+ * Save manifest to disk
36
+ */
37
+ async save() {
38
+ // Update stats before saving
39
+ this.manifest.stats.totalFiles = Object.keys(this.manifest.files).length;
40
+ this.manifest.stats.totalDependencies = this.calculateTotalDependencies();
41
+ this.manifest.lastBuildTime = Date.now();
42
+ await putFileAsync(MANIFEST_PATH, JSON.stringify(this.manifest, null, 2));
43
+ }
44
+ /**
45
+ * Get file manifest data
46
+ */
47
+ getFile(filePath) {
48
+ return this.manifest.files[filePath];
49
+ }
50
+ /**
51
+ * Check if file exists in manifest
52
+ */
53
+ hasFile(filePath) {
54
+ return filePath in this.manifest.files;
55
+ }
56
+ /**
57
+ * Set file manifest data
58
+ */
59
+ setFile(filePath, fileManifest) {
60
+ this.manifest.files[filePath] = fileManifest;
61
+ }
62
+ /**
63
+ * Remove file from manifest
64
+ */
65
+ removeFile(filePath) {
66
+ delete this.manifest.files[filePath];
67
+ }
68
+ /**
69
+ * Get all file paths in manifest
70
+ */
71
+ getAllFilePaths() {
72
+ return Object.keys(this.manifest.files);
73
+ }
74
+ /**
75
+ * Get all file manifests
76
+ */
77
+ getAllFiles() {
78
+ return this.manifest.files;
79
+ }
80
+ /**
81
+ * Get manifest metadata
82
+ */
83
+ getMetadata() {
84
+ return {
85
+ version: this.manifest.version,
86
+ lastBuildTime: this.manifest.lastBuildTime,
87
+ projectHash: this.manifest.projectHash,
88
+ stats: this.manifest.stats,
89
+ };
90
+ }
91
+ /**
92
+ * Calculate total dependencies across all files
93
+ */
94
+ calculateTotalDependencies() {
95
+ return Object.values(this.manifest.files).reduce((total, file) => total + (file.dependencies?.length || 0), 0);
96
+ }
97
+ /**
98
+ * Clear all files from manifest
99
+ */
100
+ clear() {
101
+ this.manifest.files = {};
102
+ this.manifest.stats = {
103
+ totalFiles: 0,
104
+ totalDependencies: 0,
105
+ };
106
+ }
107
+ }export{ManifestManager};//# sourceMappingURL=manifest-manager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manifest-manager.js","sources":["../../src/dev2-server/manifest-manager.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -0,0 +1,100 @@
1
+ import type { FileManager } from "./file-manager";
2
+ import type { SpecialFilesCollector } from "./special-files-collector";
3
+ /**
4
+ * Module Loader
5
+ * Dynamically loads and manages application modules (main, routes, events, locales)
6
+ * Handles module cache invalidation for HMR
7
+ */
8
+ export declare class ModuleLoader {
9
+ private readonly specialFilesCollector;
10
+ /**
11
+ * Loaded modules cache
12
+ * Maps absolute path to loaded module
13
+ */
14
+ private readonly loadedModules;
15
+ /**
16
+ * Constructor
17
+ */
18
+ constructor(specialFilesCollector: SpecialFilesCollector);
19
+ /**
20
+ * Load all special files in correct order
21
+ */
22
+ loadAll(): Promise<void>;
23
+ /**
24
+ * Load all main.ts files
25
+ * Main files are module entry points that run initialization code
26
+ * Loaded in parallel as they should be independent
27
+ */
28
+ loadMainFiles(): Promise<void>;
29
+ /**
30
+ * Load all locale files
31
+ * Locale files register translations
32
+ * Loaded in parallel as they are independent
33
+ */
34
+ loadLocaleFiles(): Promise<void>;
35
+ /**
36
+ * Load all event files
37
+ * Event files register event handlers
38
+ * Loaded in parallel as they are independent
39
+ */
40
+ loadEventFiles(): Promise<void>;
41
+ /**
42
+ * Load all route files
43
+ * Route files register HTTP routes
44
+ * Loaded sequentially as order might matter
45
+ */
46
+ loadRouteFiles(): Promise<void>;
47
+ /**
48
+ * Load a single module
49
+ * @param file FileManager instance
50
+ * @param type Module type for logging
51
+ * @param bustCache Whether to add timestamp for cache busting (for HMR)
52
+ */
53
+ private loadModule;
54
+ /**
55
+ * Reload a single module (for HMR)
56
+ * @param file FileManager instance
57
+ */
58
+ reloadModule(file: FileManager): Promise<void>;
59
+ /**
60
+ * Clear module cache for a specific file
61
+ * This forces Node.js to re-import the module
62
+ * @param absolutePath Absolute path to the module
63
+ */
64
+ clearModuleCache(absolutePath: string): void;
65
+ /**
66
+ * Clear module cache for multiple files
67
+ * @param absolutePaths Array of absolute paths
68
+ */
69
+ clearModuleCacheMultiple(absolutePaths: string[]): void;
70
+ /**
71
+ * Clear all application module cache
72
+ * Used for full server restart
73
+ */
74
+ clearAllModuleCache(): void;
75
+ /**
76
+ * Get loaded module by path
77
+ * @param absolutePath Absolute path to the module
78
+ */
79
+ getLoadedModule(absolutePath: string): any | undefined;
80
+ /**
81
+ * Check if a module is loaded
82
+ * @param absolutePath Absolute path to the module
83
+ */
84
+ isModuleLoaded(absolutePath: string): boolean;
85
+ /**
86
+ * Get all loaded module paths
87
+ */
88
+ getLoadedModulePaths(): string[];
89
+ /**
90
+ * Get statistics about loaded modules
91
+ */
92
+ getStats(): {
93
+ totalLoaded: number;
94
+ mainFiles: number;
95
+ routeFiles: number;
96
+ eventFiles: number;
97
+ localeFiles: number;
98
+ };
99
+ }
100
+ //# sourceMappingURL=module-loader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"module-loader.d.ts","sourceRoot":"","sources":["../../src/dev2-server/module-loader.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAGvE;;;;GAIG;AACH,qBAAa,YAAY;IAUX,OAAO,CAAC,QAAQ,CAAC,qBAAqB;IATlD;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA0B;IAExD;;OAEG;gBAC0B,qBAAqB,EAAE,qBAAqB;IAEzE;;OAEG;IACU,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAQrC;;;;OAIG;IACU,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAa3C;;;;OAIG;IACU,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAa7C;;;;OAIG;IACU,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAa5C;;;;OAIG;IACU,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAc5C;;;;;OAKG;YACW,UAAU;IAoDxB;;;OAGG;IACU,YAAY,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAgC3D;;;;OAIG;IACI,gBAAgB,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI;IAKnD;;;OAGG;IACI,wBAAwB,CAAC,aAAa,EAAE,MAAM,EAAE,GAAG,IAAI;IAM9D;;;OAGG;IACI,mBAAmB,IAAI,IAAI;IAOlC;;;OAGG;IACI,eAAe,CAAC,YAAY,EAAE,MAAM,GAAG,GAAG,GAAG,SAAS;IAI7D;;;OAGG;IACI,cAAc,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO;IAIpD;;OAEG;IACI,oBAAoB,IAAI,MAAM,EAAE;IAIvC;;OAEG;IACI,QAAQ,IAAI;QACjB,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,MAAM,CAAC;QAClB,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE,MAAM,CAAC;QACnB,WAAW,EAAE,MAAM,CAAC;KACrB;CASF"}