@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,422 @@
1
+ import {colors}from'@mongez/copper';import {createWorker}from'../create-worker.js';import {devLogInfo}from'../dev-logger.js';/**
2
+ * Files Healthcare Manager
3
+ *
4
+ * Manages health checkers for file validation during development.
5
+ * Supports both main-thread and worker-based checkers.
6
+ *
7
+ * Checkers with `workerPath` run in dedicated worker threads for performance.
8
+ * Checkers without `workerPath` run in the main thread.
9
+ *
10
+ * @example
11
+ * ```typescript
12
+ * const manager = new FilesHealthcareManager(files);
13
+ *
14
+ * manager.setHealthCheckers([
15
+ * new TypescriptHealthChecker(), // Has workerPath → runs in worker
16
+ * new CustomChecker(), // No workerPath → runs in main thread
17
+ * ]);
18
+ *
19
+ * await manager.initialize();
20
+ * await manager.validateAllFiles();
21
+ * ```
22
+ */
23
+ class FilesHealthcareManager {
24
+ files;
25
+ /**
26
+ * Registered health checkers
27
+ */
28
+ healthCheckers = [];
29
+ /**
30
+ * Active worker instances (checkerName → Worker)
31
+ */
32
+ workers = new Map();
33
+ /**
34
+ * Worker initialization promises (for ensuring workers are ready)
35
+ */
36
+ workerInitPromises = new Map();
37
+ /**
38
+ * Aggregated stats for each checker
39
+ */
40
+ checkerStats = new Map();
41
+ /**
42
+ * Constructor
43
+ * @param files - Map of tracked files
44
+ */
45
+ constructor(files) {
46
+ this.files = files;
47
+ }
48
+ /**
49
+ * Add health checkers to the manager
50
+ * @param checkers - Checkers to add
51
+ */
52
+ addHealthCheckers(...checkers) {
53
+ this.healthCheckers.push(...checkers);
54
+ return this;
55
+ }
56
+ /**
57
+ * Set (replace) all health checkers
58
+ * @param checkers - New set of checkers
59
+ */
60
+ setHealthCheckers(checkers) {
61
+ this.healthCheckers = checkers;
62
+ return this;
63
+ }
64
+ /**
65
+ * Initialize all health checkers
66
+ *
67
+ * For checkers with `workerPath`, spawns dedicated worker threads.
68
+ * For other checkers, calls their `initialize()` method directly.
69
+ */
70
+ async initialize() {
71
+ const initPromises = this.healthCheckers.map(async (checker) => {
72
+ // Initialize stats for this checker
73
+ this.checkerStats.set(checker.name, {
74
+ totalFiles: 0,
75
+ healthyFiles: 0,
76
+ defectiveFiles: 0,
77
+ totalErrors: 0,
78
+ totalWarnings: 0,
79
+ filesWithErrors: 0,
80
+ filesWithWarnings: 0,
81
+ });
82
+ if (checker.workerPath) {
83
+ // Spawn dedicated worker for this checker
84
+ await this.spawnWorker(checker);
85
+ }
86
+ else {
87
+ // Initialize checker on main thread
88
+ checker.initialize();
89
+ }
90
+ });
91
+ await Promise.all(initPromises);
92
+ }
93
+ /**
94
+ * Spawn a worker for a checker
95
+ */
96
+ async spawnWorker(checker) {
97
+ if (!checker.workerPath)
98
+ return;
99
+ const worker = createWorker(checker.workerPath, import.meta.url, {
100
+ workerData: { cwd: process.cwd() },
101
+ });
102
+ this.workers.set(checker.name, worker);
103
+ // Create init promise
104
+ const initPromise = new Promise((resolve) => {
105
+ const handler = (response) => {
106
+ if (response.type === "initialized") {
107
+ worker.off("message", handler);
108
+ resolve(response.success);
109
+ }
110
+ };
111
+ worker.on("message", handler);
112
+ // Handle worker errors
113
+ worker.on("error", (error) => {
114
+ console.error(`Health Checker Worker Error (${checker.name}):`, error);
115
+ resolve(false);
116
+ });
117
+ // Send init message
118
+ worker.postMessage({ type: "init", config: { cwd: process.cwd() } });
119
+ });
120
+ this.workerInitPromises.set(checker.name, initPromise);
121
+ // Wait for initialization
122
+ await initPromise;
123
+ }
124
+ /**
125
+ * Validate all tracked files
126
+ */
127
+ async validateAllFiles() {
128
+ const allFiles = Array.from(this.files.values());
129
+ await this.checkFiles(allFiles);
130
+ // Display stats
131
+ await this.displayStats();
132
+ }
133
+ /**
134
+ * Check the given files with all registered checkers
135
+ *
136
+ * All checkers run in parallel for performance.
137
+ * Worker-based checkers communicate via postMessage.
138
+ * Main-thread checkers are called directly.
139
+ */
140
+ async checkFiles(files) {
141
+ const checkPromises = this.healthCheckers.map(async (checker) => {
142
+ if (checker.workerPath) {
143
+ return this.runInWorker(checker.name, files);
144
+ }
145
+ else {
146
+ return this.runInline(checker, files);
147
+ }
148
+ });
149
+ const results = await Promise.all(checkPromises);
150
+ // Display any errors/warnings
151
+ for (const checkerResults of results) {
152
+ for (const result of checkerResults) {
153
+ if (!result.healthy) {
154
+ this.displayFileResults(result);
155
+ }
156
+ }
157
+ }
158
+ }
159
+ /**
160
+ * Run checker in worker thread
161
+ */
162
+ async runInWorker(checkerName, files) {
163
+ const worker = this.workers.get(checkerName);
164
+ if (!worker) {
165
+ return files.map((f) => ({
166
+ path: f.absolutePath,
167
+ relativePath: f.relativePath,
168
+ healthy: true,
169
+ errors: [],
170
+ warnings: [],
171
+ }));
172
+ }
173
+ // Wait for worker to be initialized
174
+ const initPromise = this.workerInitPromises.get(checkerName);
175
+ if (initPromise) {
176
+ const success = await initPromise;
177
+ if (!success) {
178
+ return files.map((f) => ({
179
+ path: f.absolutePath,
180
+ relativePath: f.relativePath,
181
+ healthy: true,
182
+ errors: [],
183
+ warnings: [],
184
+ }));
185
+ }
186
+ }
187
+ // Serialize files for worker
188
+ const serializedFiles = files.map((f) => ({
189
+ path: f.absolutePath,
190
+ content: f.source,
191
+ relativePath: f.relativePath,
192
+ }));
193
+ return new Promise((resolve) => {
194
+ const handler = (response) => {
195
+ if (response.type === "results") {
196
+ worker.off("message", handler);
197
+ // Update stats
198
+ this.updateStats(checkerName, response.results);
199
+ resolve(response.results);
200
+ }
201
+ else if (response.type === "error") {
202
+ worker.off("message", handler);
203
+ resolve(files.map((f) => ({
204
+ path: f.absolutePath,
205
+ relativePath: f.relativePath,
206
+ healthy: true,
207
+ errors: [],
208
+ warnings: [],
209
+ })));
210
+ }
211
+ };
212
+ worker.on("message", handler);
213
+ worker.postMessage({ type: "check", files: serializedFiles });
214
+ });
215
+ }
216
+ /**
217
+ * Run checker inline (main thread)
218
+ */
219
+ async runInline(checker, files) {
220
+ const results = [];
221
+ for (const file of files) {
222
+ const healthResult = await checker.check(file);
223
+ const stats = healthResult.getStats();
224
+ results.push({
225
+ path: file.absolutePath,
226
+ relativePath: file.relativePath,
227
+ healthy: stats.state === "healthy",
228
+ errors: healthResult.messages
229
+ .filter((m) => m.type === "error")
230
+ .map((m) => ({
231
+ type: "error",
232
+ message: m.message,
233
+ lineNumber: m.lineNumber,
234
+ columnNumber: m.columnNumber,
235
+ length: m.length || 1,
236
+ filePath: file.absolutePath,
237
+ relativePath: file.relativePath,
238
+ ruleId: m.ruleId,
239
+ })),
240
+ warnings: healthResult.messages
241
+ .filter((m) => m.type === "warning")
242
+ .map((m) => ({
243
+ type: "warning",
244
+ message: m.message,
245
+ lineNumber: m.lineNumber,
246
+ columnNumber: m.columnNumber,
247
+ length: m.length || 1,
248
+ filePath: file.absolutePath,
249
+ relativePath: file.relativePath,
250
+ ruleId: m.ruleId,
251
+ })),
252
+ });
253
+ }
254
+ // Update stats
255
+ const checkerResults = results;
256
+ this.updateStats(checker.name, checkerResults);
257
+ return results;
258
+ }
259
+ /**
260
+ * Update aggregated stats for a checker
261
+ */
262
+ updateStats(checkerName, results) {
263
+ const stats = this.checkerStats.get(checkerName);
264
+ if (!stats)
265
+ return;
266
+ for (const result of results) {
267
+ stats.totalFiles++;
268
+ if (result.healthy) {
269
+ stats.healthyFiles++;
270
+ }
271
+ else {
272
+ stats.defectiveFiles++;
273
+ }
274
+ stats.totalErrors += result.errors.length;
275
+ stats.totalWarnings += result.warnings.length;
276
+ if (result.errors.length > 0)
277
+ stats.filesWithErrors++;
278
+ if (result.warnings.length > 0)
279
+ stats.filesWithWarnings++;
280
+ }
281
+ }
282
+ /**
283
+ * Detect when files are changed
284
+ */
285
+ async onFileChanges(files) {
286
+ // Notify workers of file changes
287
+ const serializedFiles = files.map((f) => ({
288
+ path: f.absolutePath,
289
+ content: f.source,
290
+ relativePath: f.relativePath,
291
+ }));
292
+ for (const [, worker] of this.workers) {
293
+ worker.postMessage({ type: "fileChanges", files: serializedFiles });
294
+ }
295
+ // Notify inline checkers
296
+ await Promise.all(this.healthCheckers.filter((c) => !c.workerPath).map((c) => c.onFileChanges(files)));
297
+ }
298
+ /**
299
+ * Remove files from tracking
300
+ * Notifies both inline checkers and worker-based checkers about removed files
301
+ */
302
+ removeFiles(files) {
303
+ // Notify inline checkers
304
+ this.healthCheckers
305
+ .filter((c) => !c.workerPath)
306
+ .forEach((checker) => files.forEach((file) => checker.removeFile(file)));
307
+ // Notify workers about deleted files
308
+ if (files.length > 0) {
309
+ const deletedPaths = files.map((f) => ({
310
+ path: f.absolutePath,
311
+ relativePath: f.relativePath,
312
+ }));
313
+ for (const [, worker] of this.workers) {
314
+ worker.postMessage({ type: "filesDeleted", files: deletedPaths });
315
+ }
316
+ }
317
+ }
318
+ /**
319
+ * Display file results (errors/warnings)
320
+ */
321
+ displayFileResults(result) {
322
+ const fileName = result.relativePath.replace(/\\/g, "/");
323
+ // Display errors
324
+ for (const error of result.errors) {
325
+ const icon = colors.redBright("✖");
326
+ const level = colors.redBright(colors.bold("ERROR"));
327
+ console.log(`\n${icon} ${level} ${colors.dim("in")} ${colors.cyanBright(fileName)}${colors.dim(`(${error.lineNumber},${error.columnNumber})`)}`);
328
+ if (error.ruleId) {
329
+ console.log(` ${colors.magentaBright(error.ruleId)} ${colors.dim("→")} ${colors.red(error.message)}`);
330
+ }
331
+ else {
332
+ console.log(` ${colors.dim("→")} ${colors.red(error.message)}`);
333
+ }
334
+ }
335
+ // Display warnings
336
+ for (const warning of result.warnings) {
337
+ const icon = colors.yellowBright("⚠");
338
+ const level = colors.yellowBright(colors.bold("WARNING"));
339
+ console.log(`\n${icon} ${level} ${colors.dim("in")} ${colors.cyanBright(fileName)}${colors.dim(`(${warning.lineNumber},${warning.columnNumber})`)}`);
340
+ if (warning.ruleId) {
341
+ console.log(` ${colors.magentaBright(warning.ruleId)} ${colors.dim("→")} ${colors.yellow(warning.message)}`);
342
+ }
343
+ else {
344
+ console.log(` ${colors.dim("→")} ${colors.yellow(warning.message)}`);
345
+ }
346
+ }
347
+ }
348
+ /**
349
+ * Display stats for all health checkers
350
+ */
351
+ async displayStats() {
352
+ const allStats = [];
353
+ for (const checker of this.healthCheckers) {
354
+ const stats = this.checkerStats.get(checker.name);
355
+ if (stats) {
356
+ allStats.push({
357
+ name: checker.name,
358
+ files: {
359
+ healthy: stats.healthyFiles,
360
+ defective: stats.defectiveFiles,
361
+ },
362
+ warnings: {
363
+ total: stats.totalWarnings,
364
+ totalFiles: stats.filesWithWarnings,
365
+ },
366
+ errors: {
367
+ total: stats.totalErrors,
368
+ totalFiles: stats.filesWithErrors,
369
+ },
370
+ });
371
+ }
372
+ }
373
+ console.log("\n");
374
+ console.log(colors.bold(colors.cyan("━".repeat(80))));
375
+ devLogInfo(colors.bold(" 📊 Health Checker Statistics"));
376
+ console.log(colors.bold(colors.cyan("━".repeat(80))));
377
+ console.log("");
378
+ allStats.forEach((stats, index) => {
379
+ const totalFiles = stats.files.healthy + stats.files.defective;
380
+ const hasIssues = stats.files.defective > 0;
381
+ // Checker name with icon
382
+ const statusIcon = hasIssues ? "⚠️" : "✅";
383
+ console.log(colors.bold(` ${statusIcon} ${stats.name}`));
384
+ console.log(colors.dim(" " + "─".repeat(76)));
385
+ // Files summary
386
+ const filesLine = ` Files: ${colors.white(totalFiles.toString())} total │ ${colors.green("✓ " + stats.files.healthy)} healthy │ ${hasIssues ? colors.red("✗ " + stats.files.defective) : colors.dim("✗ 0")} defective`;
387
+ console.log(filesLine);
388
+ // Issues summary
389
+ const warningsText = stats.warnings.total > 0
390
+ ? colors.yellow(`⚠ ${stats.warnings.total} warnings`)
391
+ : colors.dim("⚠ 0 warnings");
392
+ const errorsText = stats.errors.total > 0
393
+ ? colors.red(`✗ ${stats.errors.total} errors`)
394
+ : colors.dim("✗ 0 errors");
395
+ console.log(` Issues: ${warningsText} │ ${errorsText}`);
396
+ // Add spacing between checkers
397
+ if (index < allStats.length - 1) {
398
+ console.log("");
399
+ }
400
+ });
401
+ console.log("");
402
+ console.log(colors.bold(colors.cyan("━".repeat(80))));
403
+ console.log("");
404
+ }
405
+ /**
406
+ * Shutdown all workers
407
+ */
408
+ async shutdown() {
409
+ for (const [name, worker] of this.workers) {
410
+ try {
411
+ worker.postMessage({ type: "shutdown" });
412
+ await worker.terminate();
413
+ }
414
+ catch {
415
+ // Worker may already be terminated
416
+ }
417
+ }
418
+ this.workers.clear();
419
+ this.workerInitPromises.clear();
420
+ this.checkerStats.clear();
421
+ }
422
+ }export{FilesHealthcareManager};//# sourceMappingURL=files-healthcare.manager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"files-healthcare.manager.js","sources":["../../../src/dev2-server/health-checker/files-healthcare.manager.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ export * from "./checkers/base-health-checker";
2
+ export * from "./checkers/eslint-health-checker";
3
+ export * from "./checkers/typescript-health-checker";
4
+ export * from "./workers/eslint-health.worker";
5
+ export * from "./workers/ts-health.worker";
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/dev2-server/health-checker/index.ts"],"names":[],"mappings":"AAAA,cAAc,gCAAgC,CAAC;AAC/C,cAAc,kCAAkC,CAAC;AACjD,cAAc,sCAAsC,CAAC;AACrD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,4BAA4B,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=eslint-health.worker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"eslint-health.worker.d.ts","sourceRoot":"","sources":["../../../../src/dev2-server/health-checker/workers/eslint-health.worker.ts"],"names":[],"mappings":""}
@@ -0,0 +1,214 @@
1
+ import {ESLint}from'eslint';import fs from'fs';import path from'path';import {parentPort,workerData}from'worker_threads';/**
2
+ * ESLint Health Check Worker
3
+ *
4
+ * This worker runs in a dedicated thread to perform ESLint linting
5
+ * without blocking the main dev server thread. It maintains a persistent
6
+ * ESLint instance for efficient linting.
7
+ *
8
+ * Communication:
9
+ * - Receives: { type: 'init' | 'check' | 'shutdown', ... }
10
+ * - Sends: { type: 'results' | 'initialized' | 'error', ... }
11
+ */
12
+ /**
13
+ * ESLint Health Worker class
14
+ * Maintains persistent ESLint instance for efficient linting
15
+ */
16
+ class ESLintHealthWorker {
17
+ /**
18
+ * ESLint instance
19
+ */
20
+ eslint = null;
21
+ /**
22
+ * Whether the worker is initialized
23
+ */
24
+ initialized = false;
25
+ /**
26
+ * Whether ESLint config was found
27
+ */
28
+ hasConfig = false;
29
+ /**
30
+ * Current working directory
31
+ */
32
+ cwd = process.cwd();
33
+ /**
34
+ * Initialize the worker with ESLint configuration
35
+ */
36
+ initialize(config) {
37
+ try {
38
+ this.cwd = config.cwd || process.cwd();
39
+ // Check if ESLint flat config exists
40
+ const flatConfigPath = path.join(this.cwd, "eslint.config.js");
41
+ const flatConfigMjsPath = path.join(this.cwd, "eslint.config.mjs");
42
+ const flatConfigCjsPath = path.join(this.cwd, "eslint.config.cjs");
43
+ this.hasConfig =
44
+ fs.existsSync(flatConfigPath) ||
45
+ fs.existsSync(flatConfigMjsPath) ||
46
+ fs.existsSync(flatConfigCjsPath);
47
+ if (!this.hasConfig) {
48
+ this.initialized = true;
49
+ return { success: true, hasConfig: false };
50
+ }
51
+ // Create ESLint instance with flat config
52
+ this.eslint = new ESLint({
53
+ cwd: this.cwd,
54
+ });
55
+ this.initialized = true;
56
+ return { success: true, hasConfig: true };
57
+ }
58
+ catch (error) {
59
+ console.error("ESLint Worker: Failed to initialize:", error);
60
+ this.initialized = true;
61
+ return { success: false, hasConfig: false };
62
+ }
63
+ }
64
+ /**
65
+ * Check files for ESLint errors
66
+ */
67
+ async checkFiles(files) {
68
+ if (!this.eslint || !this.hasConfig) {
69
+ // No ESLint config, return all files as healthy
70
+ return files.map((file) => ({
71
+ path: file.path,
72
+ relativePath: file.relativePath,
73
+ healthy: true,
74
+ errors: [],
75
+ warnings: [],
76
+ }));
77
+ }
78
+ const results = [];
79
+ for (const file of files) {
80
+ // Only lint lintable files
81
+ if (!this.isLintableFile(file.path)) {
82
+ results.push({
83
+ path: file.path,
84
+ relativePath: file.relativePath,
85
+ healthy: true,
86
+ errors: [],
87
+ warnings: [],
88
+ });
89
+ continue;
90
+ }
91
+ try {
92
+ const result = await this.checkSingleFile(file);
93
+ results.push(result);
94
+ }
95
+ catch (error) {
96
+ // On error, mark as healthy to avoid blocking
97
+ results.push({
98
+ path: file.path,
99
+ relativePath: file.relativePath,
100
+ healthy: true,
101
+ errors: [],
102
+ warnings: [],
103
+ });
104
+ }
105
+ }
106
+ return results;
107
+ }
108
+ /**
109
+ * Check a single file for lint issues
110
+ */
111
+ async checkSingleFile(file) {
112
+ if (!this.eslint) {
113
+ return {
114
+ path: file.path,
115
+ relativePath: file.relativePath,
116
+ healthy: true,
117
+ errors: [],
118
+ warnings: [],
119
+ };
120
+ }
121
+ // Use lintText to lint from memory (not disk)
122
+ const lintResults = await this.eslint.lintText(file.content, {
123
+ filePath: file.path,
124
+ });
125
+ if (lintResults.length === 0) {
126
+ return {
127
+ path: file.path,
128
+ relativePath: file.relativePath,
129
+ healthy: true,
130
+ errors: [],
131
+ warnings: [],
132
+ };
133
+ }
134
+ const lintResult = lintResults[0];
135
+ const errors = [];
136
+ const warnings = [];
137
+ for (const message of lintResult.messages) {
138
+ const lintMessage = {
139
+ type: message.severity === 2 ? "error" : "warning",
140
+ message: message.message,
141
+ lineNumber: message.line || 1,
142
+ columnNumber: message.column || 1,
143
+ length: message.endColumn && message.column ? message.endColumn - message.column : 1,
144
+ filePath: file.path,
145
+ relativePath: file.relativePath,
146
+ ruleId: message.ruleId || undefined,
147
+ };
148
+ if (message.severity === 2) {
149
+ errors.push(lintMessage);
150
+ }
151
+ else if (message.severity === 1) {
152
+ warnings.push(lintMessage);
153
+ }
154
+ }
155
+ return {
156
+ path: file.path,
157
+ relativePath: file.relativePath,
158
+ healthy: errors.length === 0 && warnings.length === 0,
159
+ errors,
160
+ warnings,
161
+ };
162
+ }
163
+ /**
164
+ * Check if file is a lintable file
165
+ */
166
+ isLintableFile(filePath) {
167
+ const ext = filePath.toLowerCase();
168
+ return (ext.endsWith(".ts") || ext.endsWith(".tsx") || ext.endsWith(".js") || ext.endsWith(".jsx"));
169
+ }
170
+ }
171
+ // Create worker instance
172
+ const worker = new ESLintHealthWorker();
173
+ // Handle messages from main thread
174
+ parentPort?.on("message", async (message) => {
175
+ try {
176
+ switch (message.type) {
177
+ case "init": {
178
+ const initResult = worker.initialize(message.config);
179
+ const response = {
180
+ type: "initialized",
181
+ success: initResult.success,
182
+ hasConfig: initResult.hasConfig,
183
+ };
184
+ parentPort?.postMessage(response);
185
+ break;
186
+ }
187
+ case "check": {
188
+ const results = await worker.checkFiles(message.files);
189
+ const response = { type: "results", results };
190
+ parentPort?.postMessage(response);
191
+ break;
192
+ }
193
+ case "filesDeleted": {
194
+ // ESLint doesn't maintain internal file cache (lints from memory)
195
+ // No cleanup needed, just acknowledge
196
+ break;
197
+ }
198
+ case "shutdown": {
199
+ process.exit(0);
200
+ }
201
+ }
202
+ }
203
+ catch (error) {
204
+ const response = {
205
+ type: "error",
206
+ message: error instanceof Error ? error.message : String(error),
207
+ };
208
+ parentPort?.postMessage(response);
209
+ }
210
+ });
211
+ // Handle initialization from workerData if provided
212
+ if (workerData?.autoInit) {
213
+ worker.initialize({ cwd: workerData.cwd || process.cwd() });
214
+ }//# sourceMappingURL=eslint-health.worker.js.map