@warlock.js/core 4.0.135 → 4.0.137

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 (521) hide show
  1. package/esm/benchmark/benchmark-snapshots.d.ts +47 -0
  2. package/esm/benchmark/benchmark-snapshots.d.ts.map +1 -0
  3. package/esm/benchmark/benchmark-snapshots.js +77 -0
  4. package/esm/benchmark/benchmark-snapshots.js.map +1 -0
  5. package/esm/benchmark/benchmark.d.ts +25 -0
  6. package/esm/benchmark/benchmark.d.ts.map +1 -0
  7. package/esm/benchmark/benchmark.example.d.ts +2 -0
  8. package/esm/benchmark/benchmark.example.d.ts.map +1 -0
  9. package/esm/benchmark/benchmark.js +120 -0
  10. package/esm/benchmark/benchmark.js.map +1 -0
  11. package/esm/benchmark/channels/console.channel.d.ts +14 -0
  12. package/esm/benchmark/channels/console.channel.d.ts.map +1 -0
  13. package/esm/benchmark/channels/console.channel.js +29 -0
  14. package/esm/benchmark/channels/console.channel.js.map +1 -0
  15. package/esm/benchmark/channels/index.d.ts +3 -0
  16. package/esm/benchmark/channels/index.d.ts.map +1 -0
  17. package/esm/benchmark/channels/noop.channel.d.ts +5 -0
  18. package/esm/benchmark/channels/noop.channel.d.ts.map +1 -0
  19. package/esm/benchmark/channels/noop.channel.js +3 -0
  20. package/esm/benchmark/channels/noop.channel.js.map +1 -0
  21. package/esm/benchmark/index.d.ts +7 -0
  22. package/esm/benchmark/index.d.ts.map +1 -0
  23. package/esm/benchmark/profiler.d.ts +63 -0
  24. package/esm/benchmark/profiler.d.ts.map +1 -0
  25. package/esm/benchmark/profiler.js +155 -0
  26. package/esm/benchmark/profiler.js.map +1 -0
  27. package/esm/benchmark/types.d.ts +167 -0
  28. package/esm/benchmark/types.d.ts.map +1 -0
  29. package/esm/cli/cli-commands.manager.js +1 -1
  30. package/esm/cli/cli-commands.manager.js.map +1 -1
  31. package/esm/cli/commands/dev-server.command.js +1 -1
  32. package/esm/cli/commands/dev-server.command.js.map +1 -1
  33. package/esm/cli/commands/drop-tables.command.d.ts +2 -0
  34. package/esm/cli/commands/drop-tables.command.d.ts.map +1 -0
  35. package/esm/cli/commands/drop-tables.command.js +17 -0
  36. package/esm/cli/commands/drop-tables.command.js.map +1 -0
  37. package/esm/cli/commands/generate/generate.command.d.ts.map +1 -1
  38. package/esm/cli/commands/generate/generate.command.js +1 -0
  39. package/esm/cli/commands/generate/generate.command.js.map +1 -1
  40. package/esm/cli/commands/generate/generators/controller.generator.js +6 -6
  41. package/esm/cli/commands/generate/generators/controller.generator.js.map +1 -1
  42. package/esm/cli/commands/generate/generators/module.generator.d.ts.map +1 -1
  43. package/esm/cli/commands/generate/generators/module.generator.js +6 -5
  44. package/esm/cli/commands/generate/generators/module.generator.js.map +1 -1
  45. package/esm/cli/commands/generate/generators/validation.generator.js +11 -11
  46. package/esm/cli/commands/generate/generators/validation.generator.js.map +1 -1
  47. package/esm/cli/commands/generate/templates/stubs.d.ts +6 -3
  48. package/esm/cli/commands/generate/templates/stubs.d.ts.map +1 -1
  49. package/esm/cli/commands/generate/templates/stubs.js +37 -25
  50. package/esm/cli/commands/generate/templates/stubs.js.map +1 -1
  51. package/esm/cli/commands/generate/utils/prompt.js +21 -0
  52. package/esm/cli/commands/generate/utils/prompt.js.map +1 -0
  53. package/esm/cli/commands/seed.command.d.ts.map +1 -1
  54. package/esm/cli/commands/seed.command.js +9 -2
  55. package/esm/cli/commands/seed.command.js.map +1 -1
  56. package/esm/cli/commands/storage-put.action.d.ts +22 -0
  57. package/esm/cli/commands/storage-put.action.d.ts.map +1 -0
  58. package/esm/cli/commands/storage-put.action.js +75 -0
  59. package/esm/cli/commands/storage-put.action.js.map +1 -0
  60. package/esm/cli/commands/storage-put.command.d.ts +20 -0
  61. package/esm/cli/commands/storage-put.command.d.ts.map +1 -0
  62. package/esm/cli/commands/storage-put.command.js +41 -0
  63. package/esm/cli/commands/storage-put.command.js.map +1 -0
  64. package/esm/cli/commands/typings-generator.command.js +1 -1
  65. package/esm/cli/commands/typings-generator.command.js.map +1 -1
  66. package/esm/cli/commands-loader.js +1 -1
  67. package/esm/cli/commands-loader.js.map +1 -1
  68. package/esm/cli/framework-cli-commands.d.ts.map +1 -1
  69. package/esm/cli/framework-cli-commands.js +7 -2
  70. package/esm/cli/framework-cli-commands.js.map +1 -1
  71. package/esm/cli/types.d.ts +1 -1
  72. package/esm/cli/types.d.ts.map +1 -1
  73. package/esm/config/config-getter.d.ts +1 -1
  74. package/esm/config/config-getter.d.ts.map +1 -1
  75. package/esm/config/config-getter.js.map +1 -1
  76. package/esm/config/config-loader.d.ts +1 -1
  77. package/esm/config/config-loader.d.ts.map +1 -1
  78. package/esm/config/config-loader.js +1 -1
  79. package/esm/config/config-loader.js.map +1 -1
  80. package/esm/config/config-manager.d.ts +1 -1
  81. package/esm/config/config-manager.d.ts.map +1 -1
  82. package/esm/config/load-config-files.d.ts.map +1 -1
  83. package/esm/config/load-config-files.js +1 -1
  84. package/esm/config/load-config-files.js.map +1 -1
  85. package/esm/connectors/base-connector.d.ts.map +1 -0
  86. package/esm/{dev2-server/connectors → connectors}/base-connector.js +1 -1
  87. package/esm/connectors/base-connector.js.map +1 -0
  88. package/esm/connectors/cache-connector.d.ts.map +1 -0
  89. package/esm/connectors/cache-connector.js.map +1 -0
  90. package/esm/connectors/communicator-connector.d.ts.map +1 -0
  91. package/esm/connectors/communicator-connector.js.map +1 -0
  92. package/esm/connectors/connectors-manager.d.ts.map +1 -0
  93. package/esm/{dev2-server/connectors → connectors}/connectors-manager.js +1 -1
  94. package/esm/connectors/connectors-manager.js.map +1 -0
  95. package/esm/connectors/database-connector.d.ts.map +1 -0
  96. package/esm/connectors/database-connector.js.map +1 -0
  97. package/esm/{dev2-server/connectors → connectors}/http-connector.d.ts +2 -0
  98. package/esm/connectors/http-connector.d.ts.map +1 -0
  99. package/esm/{dev2-server/connectors → connectors}/http-connector.js +18 -4
  100. package/esm/connectors/http-connector.js.map +1 -0
  101. package/esm/connectors/index.d.ts.map +1 -0
  102. package/esm/connectors/storage.connector.d.ts.map +1 -0
  103. package/esm/{dev2-server/connectors → connectors}/storage.connector.js +1 -1
  104. package/esm/connectors/storage.connector.js.map +1 -0
  105. package/esm/connectors/types.d.ts.map +1 -0
  106. package/esm/connectors/types.js.map +1 -0
  107. package/esm/database/drop-tables-action.d.ts +3 -0
  108. package/esm/database/drop-tables-action.d.ts.map +1 -0
  109. package/esm/database/drop-tables-action.js +29 -0
  110. package/esm/database/drop-tables-action.js.map +1 -0
  111. package/esm/database/migrate-action.js +18 -10
  112. package/esm/database/migrate-action.js.map +1 -1
  113. package/esm/database/seed-command-action.js +4 -4
  114. package/esm/database/seed-command-action.js.map +1 -1
  115. package/esm/database/seeds/seeder.d.ts +4 -0
  116. package/esm/database/seeds/seeder.d.ts.map +1 -1
  117. package/esm/database/seeds/seeder.js.map +1 -1
  118. package/esm/database/seeds/seeders.manager.d.ts +1 -1
  119. package/esm/database/seeds/seeders.manager.d.ts.map +1 -1
  120. package/esm/database/seeds/seeders.manager.js +12 -5
  121. package/esm/database/seeds/seeders.manager.js.map +1 -1
  122. package/esm/database/utils.d.ts +1 -2
  123. package/esm/database/utils.d.ts.map +1 -1
  124. package/esm/database/utils.js +2 -2
  125. package/esm/database/utils.js.map +1 -1
  126. package/esm/dev-server/create-worker.d.ts.map +1 -0
  127. package/esm/dev-server/create-worker.js.map +1 -0
  128. package/esm/{dev2-server → dev-server}/dependency-graph.d.ts +10 -1
  129. package/esm/dev-server/dependency-graph.d.ts.map +1 -0
  130. package/esm/{dev2-server → dev-server}/dependency-graph.js +49 -5
  131. package/esm/dev-server/dependency-graph.js.map +1 -0
  132. package/esm/dev-server/dev-logger.d.ts.map +1 -0
  133. package/esm/dev-server/dev-logger.js.map +1 -0
  134. package/esm/{dev2-server → dev-server}/development-server.d.ts +8 -0
  135. package/esm/dev-server/development-server.d.ts.map +1 -0
  136. package/esm/{dev2-server → dev-server}/development-server.js +57 -7
  137. package/esm/dev-server/development-server.js.map +1 -0
  138. package/esm/dev-server/events.d.ts.map +1 -0
  139. package/esm/dev-server/events.js.map +1 -0
  140. package/esm/dev-server/export-analyzer.d.ts.map +1 -0
  141. package/esm/dev-server/export-analyzer.js.map +1 -0
  142. package/esm/dev-server/file-event-handler.d.ts.map +1 -0
  143. package/esm/{dev2-server → dev-server}/file-event-handler.js +13 -4
  144. package/esm/dev-server/file-event-handler.js.map +1 -0
  145. package/esm/{dev2-server → dev-server}/file-manager.d.ts +10 -1
  146. package/esm/dev-server/file-manager.d.ts.map +1 -0
  147. package/esm/{dev2-server → dev-server}/file-manager.js +26 -3
  148. package/esm/dev-server/file-manager.js.map +1 -0
  149. package/esm/dev-server/file-operations.d.ts.map +1 -0
  150. package/esm/dev-server/file-operations.js.map +1 -0
  151. package/esm/{dev2-server → dev-server}/files-orchestrator.d.ts +7 -1
  152. package/esm/dev-server/files-orchestrator.d.ts.map +1 -0
  153. package/esm/{dev2-server → dev-server}/files-orchestrator.js +39 -8
  154. package/esm/dev-server/files-orchestrator.js.map +1 -0
  155. package/esm/dev-server/files-watcher.d.ts.map +1 -0
  156. package/esm/{dev2-server → dev-server}/files-watcher.js +30 -4
  157. package/esm/dev-server/files-watcher.js.map +1 -0
  158. package/esm/dev-server/flags.d.ts.map +1 -0
  159. package/esm/dev-server/flags.js.map +1 -0
  160. package/esm/dev-server/health-checker/checkers/base-health-checker.d.ts.map +1 -0
  161. package/esm/dev-server/health-checker/checkers/base-health-checker.js.map +1 -0
  162. package/esm/dev-server/health-checker/checkers/eslint-health-checker.d.ts.map +1 -0
  163. package/esm/dev-server/health-checker/checkers/eslint-health-checker.js.map +1 -0
  164. package/esm/dev-server/health-checker/checkers/typescript-health-checker.d.ts.map +1 -0
  165. package/esm/dev-server/health-checker/checkers/typescript-health-checker.js.map +1 -0
  166. package/esm/dev-server/health-checker/file-health-checker.contract.d.ts.map +1 -0
  167. package/esm/dev-server/health-checker/file-health-result.d.ts.map +1 -0
  168. package/esm/dev-server/health-checker/file-health-result.js.map +1 -0
  169. package/esm/dev-server/health-checker/files-healthcare.manager.d.ts.map +1 -0
  170. package/esm/dev-server/health-checker/files-healthcare.manager.js.map +1 -0
  171. package/esm/dev-server/health-checker/index.d.ts.map +1 -0
  172. package/esm/dev-server/health-checker/workers/eslint-health.worker.d.ts.map +1 -0
  173. package/esm/dev-server/health-checker/workers/eslint-health.worker.js.map +1 -0
  174. package/esm/dev-server/health-checker/workers/ts-health.worker.d.ts.map +1 -0
  175. package/esm/dev-server/health-checker/workers/ts-health.worker.js.map +1 -0
  176. package/esm/dev-server/import-deduplicator.d.ts +75 -0
  177. package/esm/dev-server/import-deduplicator.d.ts.map +1 -0
  178. package/esm/dev-server/import-deduplicator.js +288 -0
  179. package/esm/dev-server/import-deduplicator.js.map +1 -0
  180. package/esm/dev-server/import-deduplicator.test.d.ts +7 -0
  181. package/esm/dev-server/import-deduplicator.test.d.ts.map +1 -0
  182. package/esm/dev-server/import-transformer.d.ts.map +1 -0
  183. package/esm/{dev2-server → dev-server}/import-transformer.js +61 -129
  184. package/esm/dev-server/import-transformer.js.map +1 -0
  185. package/esm/{dev2-server → dev-server}/index.d.ts.map +1 -1
  186. package/esm/{dev2-server → dev-server}/layer-executor.d.ts +5 -2
  187. package/esm/dev-server/layer-executor.d.ts.map +1 -0
  188. package/esm/{dev2-server → dev-server}/layer-executor.js +34 -9
  189. package/esm/dev-server/layer-executor.js.map +1 -0
  190. package/esm/dev-server/manifest-manager.d.ts.map +1 -0
  191. package/esm/dev-server/manifest-manager.js.map +1 -0
  192. package/esm/{dev2-server → dev-server}/module-loader.d.ts +3 -0
  193. package/esm/dev-server/module-loader.d.ts.map +1 -0
  194. package/esm/{dev2-server → dev-server}/module-loader.js +9 -5
  195. package/esm/dev-server/module-loader.js.map +1 -0
  196. package/esm/dev-server/package-json-manager.d.ts.map +1 -0
  197. package/esm/dev-server/package-json-manager.js.map +1 -0
  198. package/esm/dev-server/parse-imports.d.ts +34 -0
  199. package/esm/dev-server/parse-imports.d.ts.map +1 -0
  200. package/esm/{dev2-server → dev-server}/parse-imports.js +98 -1
  201. package/esm/dev-server/parse-imports.js.map +1 -0
  202. package/esm/dev-server/path.d.ts.map +1 -0
  203. package/esm/dev-server/path.js.map +1 -0
  204. package/esm/dev-server/runtime-import-helper.d.ts.map +1 -0
  205. package/esm/{dev2-server → dev-server}/runtime-import-helper.js +3 -3
  206. package/esm/dev-server/runtime-import-helper.js.map +1 -0
  207. package/esm/dev-server/special-files-collector.d.ts.map +1 -0
  208. package/esm/dev-server/special-files-collector.js.map +1 -0
  209. package/esm/dev-server/start-development-server.d.ts.map +1 -0
  210. package/esm/dev-server/start-development-server.js.map +1 -0
  211. package/esm/dev-server/transpile-file.d.ts.map +1 -0
  212. package/esm/dev-server/transpile-file.js.map +1 -0
  213. package/esm/dev-server/tsconfig-manager.d.ts.map +1 -0
  214. package/esm/dev-server/tsconfig-manager.js.map +1 -0
  215. package/esm/dev-server/type-generator.d.ts.map +1 -0
  216. package/esm/dev-server/type-generator.js.map +1 -0
  217. package/esm/dev-server/types.d.ts.map +1 -0
  218. package/esm/dev-server/utils.d.ts.map +1 -0
  219. package/esm/{dev2-server → dev-server}/utils.js +2 -1
  220. package/esm/dev-server/utils.js.map +1 -0
  221. package/esm/encryption/encrypt.d.ts +23 -0
  222. package/esm/encryption/encrypt.d.ts.map +1 -0
  223. package/esm/encryption/encrypt.js +85 -0
  224. package/esm/encryption/encrypt.js.map +1 -0
  225. package/esm/encryption/hash.d.ts +17 -0
  226. package/esm/encryption/hash.d.ts.map +1 -0
  227. package/esm/encryption/hash.js +26 -0
  228. package/esm/encryption/hash.js.map +1 -0
  229. package/esm/encryption/index.d.ts +5 -0
  230. package/esm/encryption/index.d.ts.map +1 -0
  231. package/esm/encryption/password.d.ts +23 -0
  232. package/esm/encryption/password.d.ts.map +1 -0
  233. package/esm/encryption/password.js +72 -0
  234. package/esm/encryption/password.js.map +1 -0
  235. package/esm/encryption/types.d.ts +51 -0
  236. package/esm/encryption/types.d.ts.map +1 -0
  237. package/esm/generations/add-command.action.d.ts.map +1 -1
  238. package/esm/generations/add-command.action.js +44 -15
  239. package/esm/generations/add-command.action.js.map +1 -1
  240. package/esm/http/middleware/inject-request-context.d.ts.map +1 -1
  241. package/esm/http/middleware/inject-request-context.js +3 -1
  242. package/esm/http/middleware/inject-request-context.js.map +1 -1
  243. package/esm/http/request.d.ts +9 -1
  244. package/esm/http/request.d.ts.map +1 -1
  245. package/esm/http/request.js +11 -1
  246. package/esm/http/request.js.map +1 -1
  247. package/esm/http/response.d.ts.map +1 -1
  248. package/esm/http/response.js +54 -16
  249. package/esm/http/response.js.map +1 -1
  250. package/esm/http/types.d.ts +14 -6
  251. package/esm/http/types.d.ts.map +1 -1
  252. package/esm/http/uploaded-file.js +1 -1
  253. package/esm/index.d.ts +7 -3
  254. package/esm/index.d.ts.map +1 -1
  255. package/esm/index.js +1 -1
  256. package/esm/mail/mailer-pool.js +11 -11
  257. package/esm/mail/send-mail.js +1 -1
  258. package/esm/mail/send-mail.js.map +1 -1
  259. package/esm/production/production-builder.js +1 -1
  260. package/esm/repositories/adapters/cascade/cascade-adapter.js +2 -2
  261. package/esm/repositories/adapters/cascade/cascade-adapter.js.map +1 -1
  262. package/esm/repositories/adapters/cascade/cascade-query-builder.d.ts +17 -0
  263. package/esm/repositories/adapters/cascade/cascade-query-builder.d.ts.map +1 -1
  264. package/esm/repositories/adapters/cascade/cascade-query-builder.js +39 -25
  265. package/esm/repositories/adapters/cascade/cascade-query-builder.js.map +1 -1
  266. package/esm/repositories/adapters/cascade/filter-applicator.d.ts +49 -0
  267. package/esm/repositories/adapters/cascade/filter-applicator.d.ts.map +1 -1
  268. package/esm/repositories/adapters/cascade/filter-applicator.js +99 -0
  269. package/esm/repositories/adapters/cascade/filter-applicator.js.map +1 -1
  270. package/esm/repositories/contracts/query-builder.contract.d.ts +41 -0
  271. package/esm/repositories/contracts/query-builder.contract.d.ts.map +1 -1
  272. package/esm/repositories/contracts/types.d.ts +56 -6
  273. package/esm/repositories/contracts/types.d.ts.map +1 -1
  274. package/esm/repositories/repository.manager.d.ts +93 -48
  275. package/esm/repositories/repository.manager.d.ts.map +1 -1
  276. package/esm/repositories/repository.manager.js +139 -50
  277. package/esm/repositories/repository.manager.js.map +1 -1
  278. package/esm/resource/resource-field-builder.d.ts.map +1 -1
  279. package/esm/resource/resource-field-builder.js +18 -4
  280. package/esm/resource/resource-field-builder.js.map +1 -1
  281. package/esm/resource/resource.d.ts +23 -1
  282. package/esm/resource/resource.d.ts.map +1 -1
  283. package/esm/resource/resource.js +56 -3
  284. package/esm/resource/resource.js.map +1 -1
  285. package/esm/resource/types.d.ts +12 -2
  286. package/esm/resource/types.d.ts.map +1 -1
  287. package/esm/restful/restful.js +1 -1
  288. package/esm/restful/restful.js.map +1 -1
  289. package/esm/retry/index.d.ts +3 -0
  290. package/esm/retry/index.d.ts.map +1 -0
  291. package/esm/retry/retry.d.ts +21 -0
  292. package/esm/retry/retry.d.ts.map +1 -0
  293. package/esm/retry/retry.js +39 -0
  294. package/esm/retry/retry.js.map +1 -0
  295. package/esm/retry/types.d.ts +27 -0
  296. package/esm/retry/types.d.ts.map +1 -0
  297. package/esm/router/types.d.ts +10 -10
  298. package/esm/router/types.d.ts.map +1 -1
  299. package/esm/storage/scoped-storage.d.ts +34 -1
  300. package/esm/storage/scoped-storage.d.ts.map +1 -1
  301. package/esm/storage/scoped-storage.js +84 -1
  302. package/esm/storage/scoped-storage.js.map +1 -1
  303. package/esm/storage/types.d.ts +53 -0
  304. package/esm/storage/types.d.ts.map +1 -1
  305. package/esm/tests/index.d.ts +1 -0
  306. package/esm/tests/index.d.ts.map +1 -1
  307. package/esm/tests/start-http-development-server.d.ts +12 -0
  308. package/esm/tests/start-http-development-server.d.ts.map +1 -1
  309. package/esm/tests/start-http-development-server.js +66 -6
  310. package/esm/tests/start-http-development-server.js.map +1 -1
  311. package/esm/tests/test-helpers.d.ts +43 -0
  312. package/esm/tests/test-helpers.d.ts.map +1 -0
  313. package/esm/tests/test-helpers.js +86 -0
  314. package/esm/tests/test-helpers.js.map +1 -0
  315. package/esm/tests/vitest-setup.d.ts +1 -1
  316. package/esm/tests/vitest-setup.d.ts.map +1 -1
  317. package/esm/tests/vitest-setup.js +1 -1
  318. package/esm/tests/vitest-setup.js.map +1 -1
  319. package/esm/use-cases/index.d.ts +7 -0
  320. package/esm/use-cases/index.d.ts.map +1 -0
  321. package/esm/use-cases/types.d.ts +267 -0
  322. package/esm/use-cases/types.d.ts.map +1 -0
  323. package/esm/use-cases/use-case-events.d.ts +33 -0
  324. package/esm/use-cases/use-case-events.d.ts.map +1 -0
  325. package/esm/use-cases/use-case-events.js +65 -0
  326. package/esm/use-cases/use-case-events.js.map +1 -0
  327. package/esm/use-cases/use-case-pipeline.d.ts +29 -0
  328. package/esm/use-cases/use-case-pipeline.d.ts.map +1 -0
  329. package/esm/use-cases/use-case-pipeline.js +45 -0
  330. package/esm/use-cases/use-case-pipeline.js.map +1 -0
  331. package/esm/use-cases/use-case.d.ts +27 -0
  332. package/esm/use-cases/use-case.d.ts.map +1 -0
  333. package/esm/use-cases/use-case.errors.d.ts +6 -0
  334. package/esm/use-cases/use-case.errors.d.ts.map +1 -0
  335. package/esm/use-cases/use-case.errors.js +8 -0
  336. package/esm/use-cases/use-case.errors.js.map +1 -0
  337. package/esm/use-cases/use-case.js +138 -0
  338. package/esm/use-cases/use-case.js.map +1 -0
  339. package/esm/use-cases/use-cases-registry.d.ts +38 -0
  340. package/esm/use-cases/use-cases-registry.d.ts.map +1 -0
  341. package/esm/use-cases/use-cases-registry.js +92 -0
  342. package/esm/use-cases/use-cases-registry.js.map +1 -0
  343. package/esm/validation/database/exists-except-current-id.js +1 -1
  344. package/esm/validation/database/exists-except-current-user.js +1 -1
  345. package/esm/validation/database/unique-except-current-id.js +1 -1
  346. package/esm/validation/database/unique-except-current-user.js +1 -1
  347. package/esm/validation/init.js.map +1 -1
  348. package/esm/validation/plugins/database-plugin.d.ts.map +1 -1
  349. package/esm/validation/plugins/database-plugin.js +18 -30
  350. package/esm/validation/plugins/database-plugin.js.map +1 -1
  351. package/esm/validation/plugins/file-plugin.d.ts.map +1 -1
  352. package/esm/validation/plugins/file-plugin.js.map +1 -1
  353. package/esm/validation/plugins/localized-plugin.d.ts.map +1 -1
  354. package/esm/validation/plugins/localized-plugin.js.map +1 -1
  355. package/esm/validation/validators/file-validator.d.ts +14 -14
  356. package/esm/validation/validators/file-validator.d.ts.map +1 -1
  357. package/esm/validation/validators/file-validator.js +26 -27
  358. package/esm/validation/validators/file-validator.js.map +1 -1
  359. package/esm/warlock-config/types.d.ts +7 -2
  360. package/esm/warlock-config/types.d.ts.map +1 -1
  361. package/esm/warlock-config/warlock-config.manager.js +1 -1
  362. package/esm/warlock-config/warlock-config.manager.js.map +1 -1
  363. package/package.json +7 -7
  364. package/esm/dev2-server/connectors/base-connector.d.ts.map +0 -1
  365. package/esm/dev2-server/connectors/base-connector.js.map +0 -1
  366. package/esm/dev2-server/connectors/cache-connector.d.ts.map +0 -1
  367. package/esm/dev2-server/connectors/cache-connector.js.map +0 -1
  368. package/esm/dev2-server/connectors/communicator-connector.d.ts.map +0 -1
  369. package/esm/dev2-server/connectors/communicator-connector.js.map +0 -1
  370. package/esm/dev2-server/connectors/connectors-manager.d.ts.map +0 -1
  371. package/esm/dev2-server/connectors/connectors-manager.js.map +0 -1
  372. package/esm/dev2-server/connectors/database-connector.d.ts.map +0 -1
  373. package/esm/dev2-server/connectors/database-connector.js.map +0 -1
  374. package/esm/dev2-server/connectors/http-connector.d.ts.map +0 -1
  375. package/esm/dev2-server/connectors/http-connector.js.map +0 -1
  376. package/esm/dev2-server/connectors/index.d.ts.map +0 -1
  377. package/esm/dev2-server/connectors/storage.connector.d.ts.map +0 -1
  378. package/esm/dev2-server/connectors/storage.connector.js.map +0 -1
  379. package/esm/dev2-server/connectors/types.d.ts.map +0 -1
  380. package/esm/dev2-server/connectors/types.js.map +0 -1
  381. package/esm/dev2-server/create-worker.d.ts.map +0 -1
  382. package/esm/dev2-server/create-worker.js.map +0 -1
  383. package/esm/dev2-server/dependency-graph.d.ts.map +0 -1
  384. package/esm/dev2-server/dependency-graph.js.map +0 -1
  385. package/esm/dev2-server/dev-logger.d.ts.map +0 -1
  386. package/esm/dev2-server/dev-logger.js.map +0 -1
  387. package/esm/dev2-server/development-server.d.ts.map +0 -1
  388. package/esm/dev2-server/development-server.js.map +0 -1
  389. package/esm/dev2-server/events.d.ts.map +0 -1
  390. package/esm/dev2-server/events.js.map +0 -1
  391. package/esm/dev2-server/export-analyzer.d.ts.map +0 -1
  392. package/esm/dev2-server/export-analyzer.js.map +0 -1
  393. package/esm/dev2-server/file-event-handler.d.ts.map +0 -1
  394. package/esm/dev2-server/file-event-handler.js.map +0 -1
  395. package/esm/dev2-server/file-manager.d.ts.map +0 -1
  396. package/esm/dev2-server/file-manager.js.map +0 -1
  397. package/esm/dev2-server/file-operations.d.ts.map +0 -1
  398. package/esm/dev2-server/file-operations.js.map +0 -1
  399. package/esm/dev2-server/files-orchestrator.d.ts.map +0 -1
  400. package/esm/dev2-server/files-orchestrator.js.map +0 -1
  401. package/esm/dev2-server/files-watcher.d.ts.map +0 -1
  402. package/esm/dev2-server/files-watcher.js.map +0 -1
  403. package/esm/dev2-server/flags.d.ts.map +0 -1
  404. package/esm/dev2-server/flags.js.map +0 -1
  405. package/esm/dev2-server/health-checker/checkers/base-health-checker.d.ts.map +0 -1
  406. package/esm/dev2-server/health-checker/checkers/base-health-checker.js.map +0 -1
  407. package/esm/dev2-server/health-checker/checkers/eslint-health-checker.d.ts.map +0 -1
  408. package/esm/dev2-server/health-checker/checkers/eslint-health-checker.js.map +0 -1
  409. package/esm/dev2-server/health-checker/checkers/typescript-health-checker.d.ts.map +0 -1
  410. package/esm/dev2-server/health-checker/checkers/typescript-health-checker.js.map +0 -1
  411. package/esm/dev2-server/health-checker/file-health-checker.contract.d.ts.map +0 -1
  412. package/esm/dev2-server/health-checker/file-health-result.d.ts.map +0 -1
  413. package/esm/dev2-server/health-checker/file-health-result.js.map +0 -1
  414. package/esm/dev2-server/health-checker/files-healthcare.manager.d.ts.map +0 -1
  415. package/esm/dev2-server/health-checker/files-healthcare.manager.js.map +0 -1
  416. package/esm/dev2-server/health-checker/index.d.ts.map +0 -1
  417. package/esm/dev2-server/health-checker/workers/eslint-health.worker.d.ts.map +0 -1
  418. package/esm/dev2-server/health-checker/workers/eslint-health.worker.js.map +0 -1
  419. package/esm/dev2-server/health-checker/workers/ts-health.worker.d.ts.map +0 -1
  420. package/esm/dev2-server/health-checker/workers/ts-health.worker.js.map +0 -1
  421. package/esm/dev2-server/import-transformer.d.ts.map +0 -1
  422. package/esm/dev2-server/import-transformer.js.map +0 -1
  423. package/esm/dev2-server/layer-executor.d.ts.map +0 -1
  424. package/esm/dev2-server/layer-executor.js.map +0 -1
  425. package/esm/dev2-server/manifest-manager.d.ts.map +0 -1
  426. package/esm/dev2-server/manifest-manager.js.map +0 -1
  427. package/esm/dev2-server/module-loader.d.ts.map +0 -1
  428. package/esm/dev2-server/module-loader.js.map +0 -1
  429. package/esm/dev2-server/package-json-manager.d.ts.map +0 -1
  430. package/esm/dev2-server/package-json-manager.js.map +0 -1
  431. package/esm/dev2-server/parse-imports.d.ts +0 -13
  432. package/esm/dev2-server/parse-imports.d.ts.map +0 -1
  433. package/esm/dev2-server/parse-imports.js.map +0 -1
  434. package/esm/dev2-server/path.d.ts.map +0 -1
  435. package/esm/dev2-server/path.js.map +0 -1
  436. package/esm/dev2-server/runtime-import-helper.d.ts.map +0 -1
  437. package/esm/dev2-server/runtime-import-helper.js.map +0 -1
  438. package/esm/dev2-server/special-files-collector.d.ts.map +0 -1
  439. package/esm/dev2-server/special-files-collector.js.map +0 -1
  440. package/esm/dev2-server/start-development-server.d.ts.map +0 -1
  441. package/esm/dev2-server/start-development-server.js.map +0 -1
  442. package/esm/dev2-server/transpile-file.d.ts.map +0 -1
  443. package/esm/dev2-server/transpile-file.js.map +0 -1
  444. package/esm/dev2-server/tsconfig-manager.d.ts.map +0 -1
  445. package/esm/dev2-server/tsconfig-manager.js.map +0 -1
  446. package/esm/dev2-server/type-generator.d.ts.map +0 -1
  447. package/esm/dev2-server/type-generator.js.map +0 -1
  448. package/esm/dev2-server/types.d.ts.map +0 -1
  449. package/esm/dev2-server/utils.d.ts.map +0 -1
  450. package/esm/dev2-server/utils.js.map +0 -1
  451. package/esm/http/errors/resource-not-found.error.d.ts +0 -21
  452. package/esm/http/errors/resource-not-found.error.d.ts.map +0 -1
  453. package/esm/router/utils.d.ts +0 -5
  454. package/esm/router/utils.d.ts.map +0 -1
  455. package/esm/store/index.d.ts +0 -25
  456. package/esm/store/index.d.ts.map +0 -1
  457. package/esm/store/index.js +0 -52
  458. package/esm/store/index.js.map +0 -1
  459. /package/esm/{dev2-server/connectors → connectors}/base-connector.d.ts +0 -0
  460. /package/esm/{dev2-server/connectors → connectors}/cache-connector.d.ts +0 -0
  461. /package/esm/{dev2-server/connectors → connectors}/cache-connector.js +0 -0
  462. /package/esm/{dev2-server/connectors → connectors}/communicator-connector.d.ts +0 -0
  463. /package/esm/{dev2-server/connectors → connectors}/communicator-connector.js +0 -0
  464. /package/esm/{dev2-server/connectors → connectors}/connectors-manager.d.ts +0 -0
  465. /package/esm/{dev2-server/connectors → connectors}/database-connector.d.ts +0 -0
  466. /package/esm/{dev2-server/connectors → connectors}/database-connector.js +0 -0
  467. /package/esm/{dev2-server/connectors → connectors}/index.d.ts +0 -0
  468. /package/esm/{dev2-server/connectors → connectors}/storage.connector.d.ts +0 -0
  469. /package/esm/{dev2-server/connectors → connectors}/types.d.ts +0 -0
  470. /package/esm/{dev2-server/connectors → connectors}/types.js +0 -0
  471. /package/esm/{dev2-server → dev-server}/create-worker.d.ts +0 -0
  472. /package/esm/{dev2-server → dev-server}/create-worker.js +0 -0
  473. /package/esm/{dev2-server → dev-server}/dev-logger.d.ts +0 -0
  474. /package/esm/{dev2-server → dev-server}/dev-logger.js +0 -0
  475. /package/esm/{dev2-server → dev-server}/events.d.ts +0 -0
  476. /package/esm/{dev2-server → dev-server}/events.js +0 -0
  477. /package/esm/{dev2-server → dev-server}/export-analyzer.d.ts +0 -0
  478. /package/esm/{dev2-server → dev-server}/export-analyzer.js +0 -0
  479. /package/esm/{dev2-server → dev-server}/file-event-handler.d.ts +0 -0
  480. /package/esm/{dev2-server → dev-server}/file-operations.d.ts +0 -0
  481. /package/esm/{dev2-server → dev-server}/file-operations.js +0 -0
  482. /package/esm/{dev2-server → dev-server}/files-watcher.d.ts +0 -0
  483. /package/esm/{dev2-server → dev-server}/flags.d.ts +0 -0
  484. /package/esm/{dev2-server → dev-server}/flags.js +0 -0
  485. /package/esm/{dev2-server → dev-server}/health-checker/checkers/base-health-checker.d.ts +0 -0
  486. /package/esm/{dev2-server → dev-server}/health-checker/checkers/base-health-checker.js +0 -0
  487. /package/esm/{dev2-server → dev-server}/health-checker/checkers/eslint-health-checker.d.ts +0 -0
  488. /package/esm/{dev2-server → dev-server}/health-checker/checkers/eslint-health-checker.js +0 -0
  489. /package/esm/{dev2-server → dev-server}/health-checker/checkers/typescript-health-checker.d.ts +0 -0
  490. /package/esm/{dev2-server → dev-server}/health-checker/checkers/typescript-health-checker.js +0 -0
  491. /package/esm/{dev2-server → dev-server}/health-checker/file-health-checker.contract.d.ts +0 -0
  492. /package/esm/{dev2-server → dev-server}/health-checker/file-health-result.d.ts +0 -0
  493. /package/esm/{dev2-server → dev-server}/health-checker/file-health-result.js +0 -0
  494. /package/esm/{dev2-server → dev-server}/health-checker/files-healthcare.manager.d.ts +0 -0
  495. /package/esm/{dev2-server → dev-server}/health-checker/files-healthcare.manager.js +0 -0
  496. /package/esm/{dev2-server → dev-server}/health-checker/index.d.ts +0 -0
  497. /package/esm/{dev2-server → dev-server}/health-checker/workers/eslint-health.worker.d.ts +0 -0
  498. /package/esm/{dev2-server → dev-server}/health-checker/workers/eslint-health.worker.js +0 -0
  499. /package/esm/{dev2-server → dev-server}/health-checker/workers/ts-health.worker.d.ts +0 -0
  500. /package/esm/{dev2-server → dev-server}/health-checker/workers/ts-health.worker.js +0 -0
  501. /package/esm/{dev2-server → dev-server}/import-transformer.d.ts +0 -0
  502. /package/esm/{dev2-server → dev-server}/index.d.ts +0 -0
  503. /package/esm/{dev2-server → dev-server}/manifest-manager.d.ts +0 -0
  504. /package/esm/{dev2-server → dev-server}/manifest-manager.js +0 -0
  505. /package/esm/{dev2-server → dev-server}/package-json-manager.d.ts +0 -0
  506. /package/esm/{dev2-server → dev-server}/package-json-manager.js +0 -0
  507. /package/esm/{dev2-server → dev-server}/path.d.ts +0 -0
  508. /package/esm/{dev2-server → dev-server}/path.js +0 -0
  509. /package/esm/{dev2-server → dev-server}/runtime-import-helper.d.ts +0 -0
  510. /package/esm/{dev2-server → dev-server}/special-files-collector.d.ts +0 -0
  511. /package/esm/{dev2-server → dev-server}/special-files-collector.js +0 -0
  512. /package/esm/{dev2-server → dev-server}/start-development-server.d.ts +0 -0
  513. /package/esm/{dev2-server → dev-server}/start-development-server.js +0 -0
  514. /package/esm/{dev2-server → dev-server}/transpile-file.d.ts +0 -0
  515. /package/esm/{dev2-server → dev-server}/transpile-file.js +0 -0
  516. /package/esm/{dev2-server → dev-server}/tsconfig-manager.d.ts +0 -0
  517. /package/esm/{dev2-server → dev-server}/tsconfig-manager.js +0 -0
  518. /package/esm/{dev2-server → dev-server}/type-generator.d.ts +0 -0
  519. /package/esm/{dev2-server → dev-server}/type-generator.js +0 -0
  520. /package/esm/{dev2-server → dev-server}/types.d.ts +0 -0
  521. /package/esm/{dev2-server → dev-server}/utils.d.ts +0 -0
@@ -0,0 +1,85 @@
1
+ import crypto from'crypto';import {config}from'../config/config-getter.js';import'../config/config-handlers.js';/**
2
+ * Default encryption algorithm.
3
+ */
4
+ const DEFAULT_ALGORITHM = "aes-256-gcm";
5
+ /**
6
+ * Get the encryption key from config, validated as a 32-byte hex string.
7
+ */
8
+ function getEncryptionKey() {
9
+ const key = config.key("encryption.key");
10
+ if (!key) {
11
+ throw new Error("Missing encryption key. Set 'encryption.key' in your config (64 hex characters = 32 bytes).");
12
+ }
13
+ const buffer = Buffer.from(key, "hex");
14
+ if (buffer.length !== 32) {
15
+ throw new Error(`Encryption key must be exactly 32 bytes (64 hex characters). Got ${buffer.length} bytes for key ${key}.`);
16
+ }
17
+ return buffer;
18
+ }
19
+ /**
20
+ * Get the configured encryption algorithm, defaults to aes-256-gcm.
21
+ */
22
+ function getAlgorithm() {
23
+ return config.key("encryption.algorithm", DEFAULT_ALGORITHM);
24
+ }
25
+ /**
26
+ * Encrypts a plaintext string using AES-256-GCM (or the configured algorithm).
27
+ * Returns a combined string in the format `iv:ciphertext:authTag`.
28
+ *
29
+ * @example
30
+ * import { encrypt } from "@warlock.js/core";
31
+ *
32
+ * const encrypted = encrypt("sk-proj-12345");
33
+ * // => "a1b2c3...:d4e5f6...:g7h8i9..."
34
+ */
35
+ function encrypt(plainText) {
36
+ if (!plainText)
37
+ return plainText;
38
+ const keyBuffer = getEncryptionKey();
39
+ const algorithm = getAlgorithm();
40
+ try {
41
+ // IV must be unique per encryption. 16 bytes is standard for AES.
42
+ const iv = crypto.randomBytes(16);
43
+ const cipher = crypto.createCipheriv(algorithm, keyBuffer, iv);
44
+ let encrypted = cipher.update(plainText, "utf8", "hex");
45
+ encrypted += cipher.final("hex");
46
+ // Auth tag validates ciphertext integrity (tamper detection)
47
+ const authTag = cipher.getAuthTag().toString("hex");
48
+ return `${iv.toString("hex")}:${encrypted}:${authTag}`;
49
+ }
50
+ catch (error) {
51
+ throw new Error(`Encryption failed: ${error.message}`);
52
+ }
53
+ }
54
+ /**
55
+ * Decrypts a string previously encrypted with {@link encrypt}.
56
+ * Expects the format `iv:ciphertext:authTag`.
57
+ *
58
+ * @example
59
+ * import { decrypt } from "@warlock.js/core";
60
+ *
61
+ * const original = decrypt(encryptedString);
62
+ * // => "sk-proj-12345"
63
+ */
64
+ function decrypt(cipherText) {
65
+ if (!cipherText)
66
+ return cipherText;
67
+ const keyBuffer = getEncryptionKey();
68
+ const algorithm = getAlgorithm();
69
+ try {
70
+ const parts = cipherText.split(":");
71
+ if (parts.length !== 3) {
72
+ throw new Error("Invalid encrypted format. Expected iv:ciphertext:authTag");
73
+ }
74
+ const [ivHex, encryptedHex, authTagHex] = parts;
75
+ const decipher = crypto.createDecipheriv(algorithm, keyBuffer, Buffer.from(ivHex, "hex"));
76
+ decipher.setAuthTag(Buffer.from(authTagHex, "hex"));
77
+ let decrypted = decipher.update(encryptedHex, "hex", "utf8");
78
+ // .final() throws if auth tag is invalid (data tampered)
79
+ decrypted += decipher.final("utf8");
80
+ return decrypted;
81
+ }
82
+ catch (error) {
83
+ throw new Error(`Decryption failed: ${error.message}`);
84
+ }
85
+ }export{decrypt,encrypt};//# sourceMappingURL=encrypt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"encrypt.js","sources":["../../src/encryption/encrypt.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Creates a deterministic HMAC-SHA256 hash of the given string.
3
+ *
4
+ * Useful for creating searchable, unique fingerprints of sensitive data
5
+ * (e.g., an API key) without storing the plaintext.
6
+ *
7
+ * Uses a dedicated HMAC key from config. Falls back to the encryption key
8
+ * if no separate HMAC key is configured.
9
+ *
10
+ * @example
11
+ * import { hmacHash } from "@warlock.js/core";
12
+ *
13
+ * const fingerprint = hmacHash("sk-proj-12345");
14
+ * // Store `fingerprint` in DB for lookups, store encrypted value separately
15
+ */
16
+ export declare function hmacHash(plainText: string): string;
17
+ //# sourceMappingURL=hash.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hash.d.ts","sourceRoot":"","sources":["../../src/encryption/hash.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAgBlD"}
@@ -0,0 +1,26 @@
1
+ import crypto from'crypto';import {config}from'../config/config-getter.js';import'../config/config-handlers.js';/**
2
+ * Creates a deterministic HMAC-SHA256 hash of the given string.
3
+ *
4
+ * Useful for creating searchable, unique fingerprints of sensitive data
5
+ * (e.g., an API key) without storing the plaintext.
6
+ *
7
+ * Uses a dedicated HMAC key from config. Falls back to the encryption key
8
+ * if no separate HMAC key is configured.
9
+ *
10
+ * @example
11
+ * import { hmacHash } from "@warlock.js/core";
12
+ *
13
+ * const fingerprint = hmacHash("sk-proj-12345");
14
+ * // Store `fingerprint` in DB for lookups, store encrypted value separately
15
+ */
16
+ function hmacHash(plainText) {
17
+ if (!plainText)
18
+ return plainText;
19
+ const hmacKey = config.key("encryption.hmacKey") ||
20
+ config.key("encryption.key");
21
+ if (!hmacKey) {
22
+ throw new Error("Missing HMAC key. Set 'encryption.hmacKey' (or 'encryption.key') in your config.");
23
+ }
24
+ const keyBuffer = Buffer.from(hmacKey, "hex");
25
+ return crypto.createHmac("sha256", keyBuffer).update(plainText).digest("hex");
26
+ }export{hmacHash};//# sourceMappingURL=hash.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hash.js","sources":["../../src/encryption/hash.ts"],"sourcesContent":[null],"names":[],"mappings":"gHAIA;;;;;;;;;;;;;;AAcG;AACG,SAAU,QAAQ,CAAC,SAAiB,EAAA;AACxC,IAAA,IAAI,CAAC,SAAS;AAAE,QAAA,OAAO,SAAS,CAAC;AAEjC,IAAA,MAAM,OAAO,GACX,MAAM,CAAC,GAAG,CAAsC,oBAAoB,CAAC;AACrE,QAAA,MAAM,CAAC,GAAG,CAAkC,gBAAgB,CAAC,CAAC;IAEhE,IAAI,CAAC,OAAO,EAAE;AACZ,QAAA,MAAM,IAAI,KAAK,CACb,kFAAkF,CACnF,CAAC;AACH,KAAA;IAED,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;AAE9C,IAAA,OAAO,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAChF"}
@@ -0,0 +1,5 @@
1
+ export * from "./encrypt";
2
+ export * from "./hash";
3
+ export * from "./password";
4
+ export * from "./types";
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/encryption/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,SAAS,CAAC"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Hashes a password using bcrypt (async — does not block the event loop).
3
+ *
4
+ * Salt rounds are read from \`encryption.password.saltRounds\` config,
5
+ * defaulting to 12.
6
+ *
7
+ * @example
8
+ * import { hashPassword } from "@warlock.js/core";
9
+ *
10
+ * const hashed = await hashPassword("user-password-123");
11
+ * // Store \`hashed\` in the database
12
+ */
13
+ export declare function hashPassword(password: string): Promise<string>;
14
+ /**
15
+ * Verifies a plain password against a bcrypt hash (async — does not block the event loop).
16
+ *
17
+ * @example
18
+ * import { verifyPassword } from "@warlock.js/core";
19
+ *
20
+ * const isValid = await verifyPassword("user-password-123", storedHash);
21
+ */
22
+ export declare function verifyPassword(plainPassword: string, hashedPassword: string): Promise<boolean>;
23
+ //# sourceMappingURL=password.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"password.d.ts","sourceRoot":"","sources":["../../src/encryption/password.ts"],"names":[],"mappings":"AAgDA;;;;;;;;;;;GAWG;AACH,wBAAsB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAWpE;AAED;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAClC,aAAa,EAAE,MAAM,EACrB,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,OAAO,CAAC,CAMlB"}
@@ -0,0 +1,72 @@
1
+ import {config}from'../config/config-getter.js';import'../config/config-handlers.js';/**
2
+ * Default bcrypt salt rounds.
3
+ */
4
+ const DEFAULT_SALT_ROUNDS = 12;
5
+ // ============================================================
6
+ // Lazy-loaded bcryptjs SDK Types
7
+ // ============================================================
8
+ /**
9
+ * Cached bcryptjs module (loaded once, reused)
10
+ */
11
+ let Bcryptjs;
12
+ let isModuleExists = null;
13
+ /**
14
+ * Installation instructions for bcryptjs package
15
+ */
16
+ const BCRYPTJS_INSTALL_INSTRUCTIONS = `
17
+ Password encryption requires the bcryptjs package.
18
+ Install it with:
19
+
20
+ npm install bcryptjs
21
+
22
+ Or with your preferred package manager:
23
+
24
+ pnpm add bcryptjs
25
+ yarn add bcryptjs
26
+ `.trim();
27
+ /**
28
+ * Load bcryptjs module
29
+ */
30
+ async function loadBcryptjs() {
31
+ try {
32
+ Bcryptjs = await import('bcryptjs');
33
+ isModuleExists = true;
34
+ }
35
+ catch {
36
+ isModuleExists = false;
37
+ }
38
+ }
39
+ loadBcryptjs();
40
+ /**
41
+ * Hashes a password using bcrypt (async — does not block the event loop).
42
+ *
43
+ * Salt rounds are read from \`encryption.password.saltRounds\` config,
44
+ * defaulting to 12.
45
+ *
46
+ * @example
47
+ * import { hashPassword } from "@warlock.js/core";
48
+ *
49
+ * const hashed = await hashPassword("user-password-123");
50
+ * // Store \`hashed\` in the database
51
+ */
52
+ async function hashPassword(password) {
53
+ if (!isModuleExists) {
54
+ throw new Error(BCRYPTJS_INSTALL_INSTRUCTIONS);
55
+ }
56
+ const saltRounds = config.key("encryption.password.salt", DEFAULT_SALT_ROUNDS);
57
+ return Bcryptjs.hash(String(password), saltRounds);
58
+ }
59
+ /**
60
+ * Verifies a plain password against a bcrypt hash (async — does not block the event loop).
61
+ *
62
+ * @example
63
+ * import { verifyPassword } from "@warlock.js/core";
64
+ *
65
+ * const isValid = await verifyPassword("user-password-123", storedHash);
66
+ */
67
+ async function verifyPassword(plainPassword, hashedPassword) {
68
+ if (!isModuleExists) {
69
+ throw new Error(BCRYPTJS_INSTALL_INSTRUCTIONS);
70
+ }
71
+ return Bcryptjs.compare(String(plainPassword), String(hashedPassword));
72
+ }export{hashPassword,verifyPassword};//# sourceMappingURL=password.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"password.js","sources":["../../src/encryption/password.ts"],"sourcesContent":[null],"names":[],"mappings":"qFAGA;;AAEG;AACH,MAAM,mBAAmB,GAAG,EAAE,CAAC;AAE/B;AACA;AACA;AAEA;;AAEG;AACH,IAAI,QAAmC,CAAC;AAExC,IAAI,cAAc,GAAmB,IAAI,CAAC;AAE1C;;AAEG;AACH,MAAM,6BAA6B,GAAG,CAAA;;;;;;;;;;CAUrC,CAAC,IAAI,EAAE,CAAC;AAET;;AAEG;AACH,eAAe,YAAY,GAAA;IACzB,IAAI;AACF,QAAA,QAAQ,GAAG,MAAM,OAAO,UAAU,CAAC,CAAC;QACpC,cAAc,GAAG,IAAI,CAAC;AACvB,KAAA;IAAC,MAAM;QACN,cAAc,GAAG,KAAK,CAAC;AACxB,KAAA;AACH,CAAC;AAED,YAAY,EAAE,CAAC;AAEf;;;;;;;;;;;AAWG;AACI,eAAe,YAAY,CAAC,QAAgB,EAAA;IACjD,IAAI,CAAC,cAAc,EAAE;AACnB,QAAA,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;AAChD,KAAA;IAED,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAC3B,0BAA0B,EAC1B,mBAAmB,CACnB,CAAC;IAEH,OAAO,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,UAAU,CAAC,CAAC;AACrD,CAAC;AAED;;;;;;;AAOG;AACI,eAAe,cAAc,CAClC,aAAqB,EACrB,cAAsB,EAAA;IAEtB,IAAI,CAAC,cAAc,EAAE;AACnB,QAAA,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;AAChD,KAAA;AAED,IAAA,OAAO,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC;AACzE"}
@@ -0,0 +1,51 @@
1
+ /**
2
+ * Configuration for the encryption module.
3
+ *
4
+ * @example
5
+ * // src/config/encryption.ts
6
+ * import type { EncryptionConfigurations } from "@warlock.js/core";
7
+ * import { env } from "@warlock.js/core";
8
+ *
9
+ * const encryptionConfig: EncryptionConfigurations = {
10
+ * key: env("APP_ENCRYPTION_KEY"),
11
+ * algorithm: "aes-256-gcm",
12
+ * hmacKey: env("APP_HMAC_KEY"),
13
+ * password: {
14
+ * saltRounds: 12,
15
+ * },
16
+ * };
17
+ *
18
+ * export default encryptionConfig;
19
+ */
20
+ export type EncryptionConfigurations = {
21
+ /**
22
+ * 32-byte hex-encoded encryption key (64 hex characters).
23
+ * Used by encrypt() and decrypt().
24
+ * Generate with: node -e "console.log(require('crypto').randomBytes(32).toString('hex'))"
25
+ */
26
+ key: string;
27
+ /**
28
+ * Encryption algorithm to use.
29
+ * Defaults to "aes-256-gcm" if not set.
30
+ */
31
+ algorithm?: string;
32
+ /**
33
+ * Separate HMAC key (hex-encoded) for hmacHash().
34
+ * Falls back to `key` if not provided.
35
+ * Best practice: keep these separate.
36
+ * Generate with: node -e "console.log(require('crypto').randomBytes(32).toString('hex'))"
37
+ */
38
+ hmacKey?: string;
39
+ /**
40
+ * Password hashing configuration (bcrypt).
41
+ */
42
+ password?: EncryptionPasswordConfigurations;
43
+ };
44
+ export type EncryptionPasswordConfigurations = {
45
+ /**
46
+ * bcrypt salt rounds. Higher = slower and more secure.
47
+ * 10–12 is the standard range. Defaults to 12.
48
+ */
49
+ salt?: number;
50
+ };
51
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/encryption/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,MAAM,wBAAwB,GAAG;IACrC;;;;OAIG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,QAAQ,CAAC,EAAE,gCAAgC,CAAC;CAC7C,CAAC;AAEF,MAAM,MAAM,gCAAgC,GAAG;IAC7C;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"add-command.action.d.ts","sourceRoot":"","sources":["../../src/generations/add-command.action.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAuKjD,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,iBAAiB,iBAyHhE"}
1
+ {"version":3,"file":"add-command.action.d.ts","sourceRoot":"","sources":["../../src/generations/add-command.action.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AA2MjD,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,iBAAiB,iBAyHhE"}
@@ -1,32 +1,61 @@
1
1
  import {colors}from'@mongez/copper';import {jsonFileAsync,fileExistsAsync,putFileAsync,putJsonFileAsync}from'@mongez/fs';import {execSync}from'node:child_process';import'@warlock.js/logger';import'../database/models/database-log/database-log.js';import'../http/context/request-context.js';import {rootPath,srcPath}from'../utils/paths.js';import'@mongez/slug';import'@mongez/supportive-is';import'@mongez/reinforcements';import {communicatorsConfigStub}from'./stubs.js';async function completeTestInstallation(options) {
2
- // first check if `src/test-setup.ts` exists
3
- const testSetupFilPath = srcPath("test-setup.ts");
4
- const testSetupExists = await fileExistsAsync(testSetupFilPath);
5
- // if not exists, then create it
2
+ // Create test-global-setup.ts (runs once before all tests)
3
+ const testGlobalSetupPath = srcPath("test-global-setup.ts");
4
+ const testGlobalSetupExists = await fileExistsAsync(testGlobalSetupPath);
5
+ if (!testGlobalSetupExists) {
6
+ await putFileAsync(testGlobalSetupPath, `/**
7
+ * Global Test Setup
8
+ *
9
+ * Runs ONCE before all test workers.
10
+ * Starts the HTTP server for integration tests.
11
+ */
12
+ import { startHttpTestServer, stopHttpTestServer } from "@warlock.js/core";
13
+
14
+ export async function setup() {
15
+ await startHttpTestServer();
16
+ }
17
+
18
+ export async function teardown() {
19
+ await stopHttpTestServer();
20
+ }
21
+ `);
22
+ console.log(`${colors.green("✓")} Created src/test-global-setup.ts`);
23
+ }
24
+ // Create test-setup.ts (runs per worker thread)
25
+ const testSetupPath = srcPath("test-setup.ts");
26
+ const testSetupExists = await fileExistsAsync(testSetupPath);
6
27
  if (!testSetupExists) {
7
- await putFileAsync(testSetupFilPath, `import { setupTestVest } from "@warlock.js/core";
28
+ await putFileAsync(testSetupPath, `/**
29
+ * Per-Worker Test Setup
30
+ *
31
+ * Runs in EACH Vitest worker thread before tests execute.
32
+ * Sets up per-worker database and cache connections.
33
+ */
34
+ import { setupTest } from "@warlock.js/core";
8
35
 
9
- await setupTestVest();
36
+ await setupTest({ connectors: true });
10
37
  `);
11
- // now check if vite.config.ts exists
12
- const viteConfigFilePath = rootPath("vite.config.ts");
13
- const viteConfigExists = await fileExistsAsync(viteConfigFilePath);
14
- // if not exists, then create it
15
- if (!viteConfigExists) {
16
- await putFileAsync(viteConfigFilePath, `import mongezVite from "@mongez/vite";
38
+ console.log(`${colors.green("✓")} Created src/test-setup.ts`);
39
+ }
40
+ // Create vite.config.ts
41
+ const viteConfigPath = rootPath("vite.config.ts");
42
+ const viteConfigExists = await fileExistsAsync(viteConfigPath);
43
+ if (!viteConfigExists) {
44
+ await putFileAsync(viteConfigPath, `import mongezVite from "@mongez/vite";
17
45
  import { defineConfig } from "vitest/config";
18
46
 
19
47
  export default defineConfig({
20
48
  plugins: [mongezVite()],
21
49
  test: {
22
- setupFiles: ["./src/test-setup.ts"],
50
+ globalSetup: "./src/test-global-setup.ts", // HTTP server - runs once
51
+ setupFiles: ["./src/test-setup.ts"], // DB/cache - runs per worker
23
52
  environment: "node",
24
53
  globals: false,
25
- include: ["src/app/*/**/*.test.ts", "src/app/*/**/*.test.ts"],
54
+ include: ["src/app/**/*.test.ts"],
26
55
  },
27
56
  });
28
57
  `);
29
- }
58
+ console.log(`${colors.green("✓")} Created vite.config.ts`);
30
59
  }
31
60
  }
32
61
  const featuresMap = {
@@ -1 +1 @@
1
- {"version":3,"file":"add-command.action.js","sources":["../../src/generations/add-command.action.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"add-command.action.js","sources":["../../src/generations/add-command.action.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"inject-request-context.d.ts","sourceRoot":"","sources":["../../../src/http/middleware/inject-request-context.ts"],"names":[],"mappings":"AAuBA,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAInD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,EACrB,QAAQ,EAAE,QAAQ,GACjB,OAAO,CAAC,gBAAgB,CAAC,CAiC3B;AAuED;;GAEG;AACH,wBAAgB,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,GAAG,OAEpD;AAED;;;;;GAKG;AACH,wBAAsB,WAAW,CAAC,CAAC,EACjC,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,GAC1C,OAAO,CAAC,CAAC,CAAC,CAUZ"}
1
+ {"version":3,"file":"inject-request-context.d.ts","sourceRoot":"","sources":["../../../src/http/middleware/inject-request-context.ts"],"names":[],"mappings":"AAuBA,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAInD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,EACrB,QAAQ,EAAE,QAAQ,GACjB,OAAO,CAAC,gBAAgB,CAAC,CAkC3B;AAuED;;GAEG;AACH,wBAAgB,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,GAAG,OAKpD;AAED;;;;;GAKG;AACH,wBAAsB,WAAW,CAAC,CAAC,EACjC,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,GAC1C,OAAO,CAAC,CAAC,CAAC,CAUZ"}
@@ -32,6 +32,7 @@ function createRequestStore(request, response) {
32
32
  return output;
33
33
  }
34
34
  catch (error) {
35
+ request.log(`${error.constructor.name}: Request failed: ${error.message}`, "error");
35
36
  return handleRequestError(error, response);
36
37
  }
37
38
  });
@@ -98,7 +99,8 @@ function handleRequestError(error, response) {
98
99
  * Translate a keyword (uses request context for locale)
99
100
  */
100
101
  function t(keyword, placeholders) {
101
- return requestContext.getRequest()?.trans(keyword, placeholders) || trans(keyword);
102
+ return (requestContext.getRequest()?.trans(keyword, placeholders) ||
103
+ trans(keyword, placeholders));
102
104
  }
103
105
  /**
104
106
  * Get or compute a value from the request cache
@@ -1 +1 @@
1
- {"version":3,"file":"inject-request-context.js","sources":["../../../src/http/middleware/inject-request-context.ts"],"sourcesContent":[null],"names":["requestContextInstance"],"mappings":"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"}
1
+ {"version":3,"file":"inject-request-context.js","sources":["../../../src/http/middleware/inject-request-context.ts"],"sourcesContent":[null],"names":["requestContextInstance"],"mappings":"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"}
@@ -75,6 +75,14 @@ export declare class Request<RequestValidation = any> {
75
75
  * Request id
76
76
  */
77
77
  id: string;
78
+ /**
79
+ * Start Time
80
+ */
81
+ startTime: number;
82
+ /**
83
+ * End Time
84
+ */
85
+ endTime?: undefined | number;
78
86
  /**
79
87
  * Set request handler
80
88
  */
@@ -205,7 +213,7 @@ export declare class Request<RequestValidation = any> {
205
213
  * Get inputs that has been validated only
206
214
  * You can also pass an array of inputs to get only the validated inputs
207
215
  */
208
- validated<Output = RequestValidation>(inputs?: string[]): Output;
216
+ validated<Output = RequestValidation>(inputs?: (keyof Output | (string & {}))[]): Output;
209
217
  /**
210
218
  * Get inputs that has been validated except the given inputs
211
219
  */
@@ -1 +1 @@
1
- {"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../src/http/request.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../src/http/request.ts"],"names":[],"mappings":"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"}
@@ -44,6 +44,14 @@ import {colors}from'@mongez/copper';import events from'@mongez/events';import {t
44
44
  * Request id
45
45
  */
46
46
  id = Random.string(32);
47
+ /**
48
+ * Start Time
49
+ */
50
+ startTime = Date.now();
51
+ /**
52
+ * End Time
53
+ */
54
+ endTime;
47
55
  /**
48
56
  * Set request handler
49
57
  */
@@ -378,7 +386,9 @@ import {colors}from'@mongez/copper';import events from'@mongez/events';import {t
378
386
  */
379
387
  validated(inputs) {
380
388
  if (this.validatedData) {
381
- return inputs ? only(this.validatedData, inputs) : this.validatedData;
389
+ return inputs
390
+ ? only(this.validatedData, inputs)
391
+ : this.validatedData;
382
392
  }
383
393
  return {};
384
394
  }