@warlock.js/core 4.1.15 → 4.2.1

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 (781) hide show
  1. package/CHANGELOG.md +30 -0
  2. package/LICENSE +21 -0
  3. package/esm/application/app.d.mts +1 -1
  4. package/esm/application/app.d.mts.map +1 -1
  5. package/esm/application/app.mjs +1 -1
  6. package/esm/application/app.mjs.map +1 -1
  7. package/esm/application/application-config-types.d.mts +1 -1
  8. package/esm/application/application-config-types.d.mts.map +1 -1
  9. package/esm/application/application.d.mts +1 -1
  10. package/esm/application/application.d.mts.map +1 -1
  11. package/esm/application/application.mjs +1 -1
  12. package/esm/application/application.mjs.map +1 -1
  13. package/esm/benchmark/benchmark-snapshots.d.mts +1 -1
  14. package/esm/benchmark/benchmark-snapshots.d.mts.map +1 -1
  15. package/esm/benchmark/benchmark-snapshots.mjs +1 -1
  16. package/esm/benchmark/benchmark-snapshots.mjs.map +1 -1
  17. package/esm/benchmark/benchmark.d.mts +1 -1
  18. package/esm/benchmark/benchmark.d.mts.map +1 -1
  19. package/esm/benchmark/benchmark.mjs +1 -1
  20. package/esm/benchmark/benchmark.mjs.map +1 -1
  21. package/esm/benchmark/channels/console.channel.d.mts +1 -1
  22. package/esm/benchmark/channels/console.channel.d.mts.map +1 -1
  23. package/esm/benchmark/channels/console.channel.mjs +1 -1
  24. package/esm/benchmark/channels/console.channel.mjs.map +1 -1
  25. package/esm/benchmark/channels/noop.channel.d.mts +1 -1
  26. package/esm/benchmark/channels/noop.channel.d.mts.map +1 -1
  27. package/esm/benchmark/channels/noop.channel.mjs +1 -1
  28. package/esm/benchmark/channels/noop.channel.mjs.map +1 -1
  29. package/esm/benchmark/profiler.d.mts +1 -1
  30. package/esm/benchmark/profiler.d.mts.map +1 -1
  31. package/esm/benchmark/profiler.mjs +1 -1
  32. package/esm/benchmark/profiler.mjs.map +1 -1
  33. package/esm/benchmark/types.d.mts +1 -1
  34. package/esm/benchmark/types.d.mts.map +1 -1
  35. package/esm/bootstrap/setup.d.mts +1 -1
  36. package/esm/bootstrap/setup.d.mts.map +1 -1
  37. package/esm/bootstrap/setup.mjs +1 -1
  38. package/esm/bootstrap/setup.mjs.map +1 -1
  39. package/esm/bootstrap.d.mts +1 -1
  40. package/esm/bootstrap.d.mts.map +1 -1
  41. package/esm/bootstrap.mjs +1 -1
  42. package/esm/bootstrap.mjs.map +1 -1
  43. package/esm/cache/database-cache-driver.d.mts +1 -1
  44. package/esm/cache/database-cache-driver.d.mts.map +1 -1
  45. package/esm/cache/database-cache-driver.mjs +1 -1
  46. package/esm/cache/database-cache-driver.mjs.map +1 -1
  47. package/esm/cache/index.mjs +1 -1
  48. package/esm/cache/index.mjs.map +1 -1
  49. package/esm/cli/cli-command.d.mts +1 -1
  50. package/esm/cli/cli-command.d.mts.map +1 -1
  51. package/esm/cli/cli-command.mjs +1 -1
  52. package/esm/cli/cli-command.mjs.map +1 -1
  53. package/esm/cli/types.d.mts +1 -1
  54. package/esm/cli/types.d.mts.map +1 -1
  55. package/esm/config/config-getter.d.mts +1 -1
  56. package/esm/config/config-getter.d.mts.map +1 -1
  57. package/esm/config/config-getter.mjs +6 -6
  58. package/esm/config/config-getter.mjs.map +1 -1
  59. package/esm/config/config-handlers.d.mts +1 -1
  60. package/esm/config/config-handlers.d.mts.map +1 -1
  61. package/esm/config/config-handlers.mjs +1 -1
  62. package/esm/config/config-handlers.mjs.map +1 -1
  63. package/esm/config/config-loader.d.mts +1 -1
  64. package/esm/config/config-loader.d.mts.map +1 -1
  65. package/esm/config/config-loader.mjs +3 -3
  66. package/esm/config/config-loader.mjs.map +1 -1
  67. package/esm/config/config-manager.mjs +1 -1
  68. package/esm/config/config-manager.mjs.map +1 -1
  69. package/esm/config/config-special-handlers.d.mts +1 -1
  70. package/esm/config/config-special-handlers.d.mts.map +1 -1
  71. package/esm/config/config-special-handlers.mjs +1 -1
  72. package/esm/config/config-special-handlers.mjs.map +1 -1
  73. package/esm/config/load-config-files.mjs +1 -1
  74. package/esm/config/load-config-files.mjs.map +1 -1
  75. package/esm/config/types.d.mts +1 -1
  76. package/esm/config/types.d.mts.map +1 -1
  77. package/esm/connectors/access-connector.d.mts +39 -0
  78. package/esm/connectors/access-connector.d.mts.map +1 -0
  79. package/esm/connectors/access-connector.mjs +54 -0
  80. package/esm/connectors/access-connector.mjs.map +1 -0
  81. package/esm/connectors/base-connector.d.mts +1 -1
  82. package/esm/connectors/base-connector.d.mts.map +1 -1
  83. package/esm/connectors/base-connector.mjs +1 -1
  84. package/esm/connectors/base-connector.mjs.map +1 -1
  85. package/esm/connectors/cache-connector.d.mts +1 -1
  86. package/esm/connectors/cache-connector.d.mts.map +1 -1
  87. package/esm/connectors/cache-connector.mjs +3 -3
  88. package/esm/connectors/cache-connector.mjs.map +1 -1
  89. package/esm/connectors/connectors-manager.d.mts +1 -1
  90. package/esm/connectors/connectors-manager.d.mts.map +1 -1
  91. package/esm/connectors/connectors-manager.mjs +5 -1
  92. package/esm/connectors/connectors-manager.mjs.map +1 -1
  93. package/esm/connectors/database-connector.d.mts +1 -1
  94. package/esm/connectors/database-connector.d.mts.map +1 -1
  95. package/esm/connectors/database-connector.mjs +3 -3
  96. package/esm/connectors/database-connector.mjs.map +1 -1
  97. package/esm/connectors/herald-connector.d.mts +1 -1
  98. package/esm/connectors/herald-connector.d.mts.map +1 -1
  99. package/esm/connectors/herald-connector.mjs +4 -4
  100. package/esm/connectors/herald-connector.mjs.map +1 -1
  101. package/esm/connectors/http-connector.d.mts +1 -1
  102. package/esm/connectors/http-connector.d.mts.map +1 -1
  103. package/esm/connectors/http-connector.mjs +8 -6
  104. package/esm/connectors/http-connector.mjs.map +1 -1
  105. package/esm/connectors/index.d.mts +2 -0
  106. package/esm/connectors/index.mjs +2 -0
  107. package/esm/connectors/logger-connector.d.mts +1 -1
  108. package/esm/connectors/logger-connector.d.mts.map +1 -1
  109. package/esm/connectors/logger-connector.mjs +3 -3
  110. package/esm/connectors/logger-connector.mjs.map +1 -1
  111. package/esm/connectors/mail-connector.d.mts +1 -1
  112. package/esm/connectors/mail-connector.d.mts.map +1 -1
  113. package/esm/connectors/mail-connector.mjs +3 -3
  114. package/esm/connectors/mail-connector.mjs.map +1 -1
  115. package/esm/connectors/notifications-connector.d.mts +38 -0
  116. package/esm/connectors/notifications-connector.d.mts.map +1 -0
  117. package/esm/connectors/notifications-connector.mjs +51 -0
  118. package/esm/connectors/notifications-connector.mjs.map +1 -0
  119. package/esm/connectors/socket-connector.d.mts +1 -1
  120. package/esm/connectors/socket-connector.d.mts.map +1 -1
  121. package/esm/connectors/socket-connector.mjs +4 -4
  122. package/esm/connectors/socket-connector.mjs.map +1 -1
  123. package/esm/connectors/storage.connector.d.mts +1 -1
  124. package/esm/connectors/storage.connector.d.mts.map +1 -1
  125. package/esm/connectors/storage.connector.mjs +1 -1
  126. package/esm/connectors/storage.connector.mjs.map +1 -1
  127. package/esm/connectors/types.d.mts +5 -3
  128. package/esm/connectors/types.d.mts.map +1 -1
  129. package/esm/connectors/types.mjs +3 -1
  130. package/esm/connectors/types.mjs.map +1 -1
  131. package/esm/container/index.d.mts +1 -1
  132. package/esm/container/index.d.mts.map +1 -1
  133. package/esm/container/index.mjs +1 -1
  134. package/esm/container/index.mjs.map +1 -1
  135. package/esm/database/models/database-log/database-log.d.mts +1 -1
  136. package/esm/database/models/database-log/database-log.d.mts.map +1 -1
  137. package/esm/database/models/database-log/database-log.mjs +1 -1
  138. package/esm/database/models/database-log/database-log.mjs.map +1 -1
  139. package/esm/database/seeds/seeder.d.mts +1 -1
  140. package/esm/database/seeds/seeder.d.mts.map +1 -1
  141. package/esm/database/seeds/seeder.mjs +1 -1
  142. package/esm/database/seeds/seeder.mjs.map +1 -1
  143. package/esm/database/seeds/types.d.mts +1 -1
  144. package/esm/database/seeds/types.d.mts.map +1 -1
  145. package/esm/database/utils.d.mts +1 -1
  146. package/esm/database/utils.d.mts.map +1 -1
  147. package/esm/database/utils.mjs +1 -1
  148. package/esm/database/utils.mjs.map +1 -1
  149. package/esm/dev-server/create-worker.mjs +1 -1
  150. package/esm/dev-server/create-worker.mjs.map +1 -1
  151. package/esm/dev-server/dependency-graph.d.mts +1 -1
  152. package/esm/dev-server/dependency-graph.d.mts.map +1 -1
  153. package/esm/dev-server/dependency-graph.mjs +1 -1
  154. package/esm/dev-server/dependency-graph.mjs.map +1 -1
  155. package/esm/dev-server/dev-logger.mjs +2 -13
  156. package/esm/dev-server/dev-logger.mjs.map +1 -1
  157. package/esm/dev-server/events.mjs +1 -1
  158. package/esm/dev-server/events.mjs.map +1 -1
  159. package/esm/dev-server/file-event-handler.mjs +1 -1
  160. package/esm/dev-server/file-event-handler.mjs.map +1 -1
  161. package/esm/dev-server/file-manager.d.mts +1 -1
  162. package/esm/dev-server/file-manager.d.mts.map +1 -1
  163. package/esm/dev-server/file-manager.mjs +1 -1
  164. package/esm/dev-server/file-manager.mjs.map +1 -1
  165. package/esm/dev-server/file-operations.d.mts +1 -1
  166. package/esm/dev-server/file-operations.d.mts.map +1 -1
  167. package/esm/dev-server/file-operations.mjs +1 -1
  168. package/esm/dev-server/file-operations.mjs.map +1 -1
  169. package/esm/dev-server/files-orchestrator.d.mts +1 -1
  170. package/esm/dev-server/files-orchestrator.d.mts.map +1 -1
  171. package/esm/dev-server/files-orchestrator.mjs +1 -1
  172. package/esm/dev-server/files-orchestrator.mjs.map +1 -1
  173. package/esm/dev-server/files-watcher.d.mts +1 -1
  174. package/esm/dev-server/files-watcher.d.mts.map +1 -1
  175. package/esm/dev-server/files-watcher.mjs +1 -1
  176. package/esm/dev-server/files-watcher.mjs.map +1 -1
  177. package/esm/dev-server/flags.mjs +1 -1
  178. package/esm/dev-server/flags.mjs.map +1 -1
  179. package/esm/dev-server/health-checker/checkers/base-health-checker.d.mts +1 -1
  180. package/esm/dev-server/health-checker/checkers/base-health-checker.d.mts.map +1 -1
  181. package/esm/dev-server/health-checker/checkers/base-health-checker.mjs +1 -1
  182. package/esm/dev-server/health-checker/checkers/base-health-checker.mjs.map +1 -1
  183. package/esm/dev-server/health-checker/checkers/eslint-health-checker.d.mts +1 -1
  184. package/esm/dev-server/health-checker/checkers/eslint-health-checker.d.mts.map +1 -1
  185. package/esm/dev-server/health-checker/checkers/eslint-health-checker.mjs +1 -1
  186. package/esm/dev-server/health-checker/checkers/eslint-health-checker.mjs.map +1 -1
  187. package/esm/dev-server/health-checker/checkers/typescript-health-checker.d.mts +1 -1
  188. package/esm/dev-server/health-checker/checkers/typescript-health-checker.d.mts.map +1 -1
  189. package/esm/dev-server/health-checker/checkers/typescript-health-checker.mjs +1 -1
  190. package/esm/dev-server/health-checker/checkers/typescript-health-checker.mjs.map +1 -1
  191. package/esm/dev-server/health-checker/file-health-checker.contract.d.mts +1 -1
  192. package/esm/dev-server/health-checker/file-health-checker.contract.d.mts.map +1 -1
  193. package/esm/dev-server/health-checker/file-health-result.d.mts +1 -1
  194. package/esm/dev-server/health-checker/file-health-result.d.mts.map +1 -1
  195. package/esm/dev-server/health-checker/file-health-result.mjs +1 -1
  196. package/esm/dev-server/health-checker/file-health-result.mjs.map +1 -1
  197. package/esm/dev-server/health-checker/files-healthcare.manager.d.mts +1 -1
  198. package/esm/dev-server/health-checker/files-healthcare.manager.d.mts.map +1 -1
  199. package/esm/dev-server/health-checker/files-healthcare.manager.mjs +1 -1
  200. package/esm/dev-server/health-checker/files-healthcare.manager.mjs.map +1 -1
  201. package/esm/dev-server/health-checker/workers/eslint-health.worker.mjs +1 -1
  202. package/esm/dev-server/health-checker/workers/eslint-health.worker.mjs.map +1 -1
  203. package/esm/dev-server/health-checker/workers/ts-health.worker.mjs +1 -1
  204. package/esm/dev-server/health-checker/workers/ts-health.worker.mjs.map +1 -1
  205. package/esm/dev-server/loader/build-transpile-init.mjs +1 -1
  206. package/esm/dev-server/loader/build-transpile-init.mjs.map +1 -1
  207. package/esm/dev-server/loader/register-loader.mjs +1 -1
  208. package/esm/dev-server/loader/register-loader.mjs.map +1 -1
  209. package/esm/dev-server/loader/transpile-cache.mjs +2 -164
  210. package/esm/dev-server/loader/transpile-cache.mjs.map +1 -1
  211. package/esm/dev-server/manifest-manager.d.mts +1 -1
  212. package/esm/dev-server/manifest-manager.d.mts.map +1 -1
  213. package/esm/dev-server/manifest-manager.mjs +1 -1
  214. package/esm/dev-server/manifest-manager.mjs.map +1 -1
  215. package/esm/dev-server/module-loader.d.mts +1 -1
  216. package/esm/dev-server/module-loader.d.mts.map +1 -1
  217. package/esm/dev-server/module-loader.mjs +1 -1
  218. package/esm/dev-server/module-loader.mjs.map +1 -1
  219. package/esm/dev-server/package-json-manager.mjs +1 -1
  220. package/esm/dev-server/package-json-manager.mjs.map +1 -1
  221. package/esm/dev-server/parse-imports.mjs +1 -1
  222. package/esm/dev-server/parse-imports.mjs.map +1 -1
  223. package/esm/dev-server/path.mjs +1 -1
  224. package/esm/dev-server/path.mjs.map +1 -1
  225. package/esm/dev-server/special-files-collector.d.mts +1 -1
  226. package/esm/dev-server/special-files-collector.d.mts.map +1 -1
  227. package/esm/dev-server/special-files-collector.mjs +1 -1
  228. package/esm/dev-server/special-files-collector.mjs.map +1 -1
  229. package/esm/dev-server/tsconfig-manager.mjs +1 -1
  230. package/esm/dev-server/tsconfig-manager.mjs.map +1 -1
  231. package/esm/dev-server/types.d.mts +1 -1
  232. package/esm/dev-server/types.d.mts.map +1 -1
  233. package/esm/dev-server/utils.mjs +1 -1
  234. package/esm/dev-server/utils.mjs.map +1 -1
  235. package/esm/encryption/encrypt.d.mts +1 -1
  236. package/esm/encryption/encrypt.d.mts.map +1 -1
  237. package/esm/encryption/encrypt.mjs +1 -1
  238. package/esm/encryption/encrypt.mjs.map +1 -1
  239. package/esm/encryption/hash.d.mts +1 -1
  240. package/esm/encryption/hash.d.mts.map +1 -1
  241. package/esm/encryption/hash.mjs +1 -1
  242. package/esm/encryption/hash.mjs.map +1 -1
  243. package/esm/encryption/password.d.mts +1 -1
  244. package/esm/encryption/password.d.mts.map +1 -1
  245. package/esm/encryption/password.mjs +1 -1
  246. package/esm/encryption/password.mjs.map +1 -1
  247. package/esm/encryption/types.d.mts +1 -1
  248. package/esm/encryption/types.d.mts.map +1 -1
  249. package/esm/http/config.d.mts +1 -1
  250. package/esm/http/config.d.mts.map +1 -1
  251. package/esm/http/config.mjs +3 -3
  252. package/esm/http/config.mjs.map +1 -1
  253. package/esm/http/context/request-context.d.mts +1 -1
  254. package/esm/http/context/request-context.d.mts.map +1 -1
  255. package/esm/http/context/request-context.mjs +1 -1
  256. package/esm/http/context/request-context.mjs.map +1 -1
  257. package/esm/http/createHttpApplication.d.mts +1 -1
  258. package/esm/http/createHttpApplication.d.mts.map +1 -1
  259. package/esm/http/createHttpApplication.mjs +3 -3
  260. package/esm/http/createHttpApplication.mjs.map +1 -1
  261. package/esm/http/database/RequestLog.d.mts +1 -1
  262. package/esm/http/database/RequestLog.d.mts.map +1 -1
  263. package/esm/http/database/RequestLog.mjs +1 -1
  264. package/esm/http/database/RequestLog.mjs.map +1 -1
  265. package/esm/http/error-codes.d.mts +1 -1
  266. package/esm/http/error-codes.d.mts.map +1 -1
  267. package/esm/http/error-codes.mjs +1 -1
  268. package/esm/http/error-codes.mjs.map +1 -1
  269. package/esm/http/errors/errors.d.mts +1 -1
  270. package/esm/http/errors/errors.d.mts.map +1 -1
  271. package/esm/http/errors/errors.mjs +1 -1
  272. package/esm/http/errors/errors.mjs.map +1 -1
  273. package/esm/http/events.d.mts +1 -1
  274. package/esm/http/events.d.mts.map +1 -1
  275. package/esm/http/events.mjs +1 -1
  276. package/esm/http/events.mjs.map +1 -1
  277. package/esm/http/middleware/cache-response-middleware.d.mts +1 -1
  278. package/esm/http/middleware/cache-response-middleware.d.mts.map +1 -1
  279. package/esm/http/middleware/cache-response-middleware.mjs +1 -1
  280. package/esm/http/middleware/cache-response-middleware.mjs.map +1 -1
  281. package/esm/http/middleware/concurrency-limit.middleware.d.mts +1 -1
  282. package/esm/http/middleware/concurrency-limit.middleware.d.mts.map +1 -1
  283. package/esm/http/middleware/concurrency-limit.middleware.mjs +1 -1
  284. package/esm/http/middleware/concurrency-limit.middleware.mjs.map +1 -1
  285. package/esm/http/middleware/idempotency.middleware.d.mts +1 -1
  286. package/esm/http/middleware/idempotency.middleware.d.mts.map +1 -1
  287. package/esm/http/middleware/idempotency.middleware.mjs +6 -6
  288. package/esm/http/middleware/idempotency.middleware.mjs.map +1 -1
  289. package/esm/http/middleware/inject-request-context.d.mts +1 -1
  290. package/esm/http/middleware/inject-request-context.d.mts.map +1 -1
  291. package/esm/http/middleware/inject-request-context.mjs +3 -3
  292. package/esm/http/middleware/inject-request-context.mjs.map +1 -1
  293. package/esm/http/middleware/ip-filter.middleware.d.mts +1 -1
  294. package/esm/http/middleware/ip-filter.middleware.d.mts.map +1 -1
  295. package/esm/http/middleware/ip-filter.middleware.mjs +1 -1
  296. package/esm/http/middleware/ip-filter.middleware.mjs.map +1 -1
  297. package/esm/http/middleware/maintenance.middleware.d.mts +1 -1
  298. package/esm/http/middleware/maintenance.middleware.d.mts.map +1 -1
  299. package/esm/http/middleware/maintenance.middleware.mjs +5 -5
  300. package/esm/http/middleware/maintenance.middleware.mjs.map +1 -1
  301. package/esm/http/middleware/max-body-size.middleware.d.mts +1 -1
  302. package/esm/http/middleware/max-body-size.middleware.d.mts.map +1 -1
  303. package/esm/http/middleware/max-body-size.middleware.mjs +1 -1
  304. package/esm/http/middleware/max-body-size.middleware.mjs.map +1 -1
  305. package/esm/http/middleware/middleware-list.d.mts +1 -1
  306. package/esm/http/middleware/middleware-list.d.mts.map +1 -1
  307. package/esm/http/middleware/middleware-list.mjs +1 -1
  308. package/esm/http/middleware/middleware-list.mjs.map +1 -1
  309. package/esm/http/middleware/rate-limit.middleware.d.mts +1 -1
  310. package/esm/http/middleware/rate-limit.middleware.d.mts.map +1 -1
  311. package/esm/http/middleware/rate-limit.middleware.mjs +1 -1
  312. package/esm/http/middleware/rate-limit.middleware.mjs.map +1 -1
  313. package/esm/http/middleware/utils/cidr-match.d.mts +1 -1
  314. package/esm/http/middleware/utils/cidr-match.d.mts.map +1 -1
  315. package/esm/http/middleware/utils/cidr-match.mjs +1 -1
  316. package/esm/http/middleware/utils/cidr-match.mjs.map +1 -1
  317. package/esm/http/middleware/utils/idempotency-key.d.mts +1 -1
  318. package/esm/http/middleware/utils/idempotency-key.d.mts.map +1 -1
  319. package/esm/http/middleware/utils/idempotency-key.mjs +1 -1
  320. package/esm/http/middleware/utils/idempotency-key.mjs.map +1 -1
  321. package/esm/http/middleware/utils/parse-size.d.mts +1 -1
  322. package/esm/http/middleware/utils/parse-size.d.mts.map +1 -1
  323. package/esm/http/middleware/utils/parse-size.mjs +1 -1
  324. package/esm/http/middleware/utils/parse-size.mjs.map +1 -1
  325. package/esm/http/plugins.d.mts +1 -1
  326. package/esm/http/plugins.d.mts.map +1 -1
  327. package/esm/http/plugins.mjs +10 -10
  328. package/esm/http/plugins.mjs.map +1 -1
  329. package/esm/http/request-controller.d.mts +1 -1
  330. package/esm/http/request-controller.d.mts.map +1 -1
  331. package/esm/http/request-controller.mjs +1 -1
  332. package/esm/http/request-controller.mjs.map +1 -1
  333. package/esm/http/request.d.mts +1 -1
  334. package/esm/http/request.d.mts.map +1 -1
  335. package/esm/http/request.mjs +1 -1
  336. package/esm/http/request.mjs.map +1 -1
  337. package/esm/http/response.d.mts +4 -4
  338. package/esm/http/response.d.mts.map +1 -1
  339. package/esm/http/response.mjs +6 -6
  340. package/esm/http/response.mjs.map +1 -1
  341. package/esm/http/server.d.mts +1 -1
  342. package/esm/http/server.d.mts.map +1 -1
  343. package/esm/http/server.mjs +3 -3
  344. package/esm/http/server.mjs.map +1 -1
  345. package/esm/http/types.d.mts +1 -1
  346. package/esm/http/types.d.mts.map +1 -1
  347. package/esm/http/uploaded-file.d.mts +1 -1
  348. package/esm/http/uploaded-file.d.mts.map +1 -1
  349. package/esm/http/uploaded-file.mjs +1 -1
  350. package/esm/http/uploaded-file.mjs.map +1 -1
  351. package/esm/http/uploads-config.d.mts +1 -1
  352. package/esm/http/uploads-config.d.mts.map +1 -1
  353. package/esm/http/uploads-config.mjs +1 -1
  354. package/esm/http/uploads-config.mjs.map +1 -1
  355. package/esm/http/uploads-types.d.mts +1 -1
  356. package/esm/http/uploads-types.d.mts.map +1 -1
  357. package/esm/image/image.d.mts +1 -1
  358. package/esm/image/image.d.mts.map +1 -1
  359. package/esm/image/image.mjs +1 -1
  360. package/esm/image/image.mjs.map +1 -1
  361. package/esm/index.d.mts +4 -1
  362. package/esm/index.mjs +5 -1
  363. package/esm/logger/logger.d.mts +1 -1
  364. package/esm/logger/logger.d.mts.map +1 -1
  365. package/esm/logger/logger.mjs +1 -1
  366. package/esm/logger/logger.mjs.map +1 -1
  367. package/esm/logger/types.d.mts +1 -1
  368. package/esm/logger/types.d.mts.map +1 -1
  369. package/esm/mail/config.d.mts +1 -1
  370. package/esm/mail/config.d.mts.map +1 -1
  371. package/esm/mail/config.mjs +1 -1
  372. package/esm/mail/config.mjs.map +1 -1
  373. package/esm/mail/events.d.mts +1 -1
  374. package/esm/mail/events.d.mts.map +1 -1
  375. package/esm/mail/events.mjs +1 -1
  376. package/esm/mail/events.mjs.map +1 -1
  377. package/esm/mail/mail.d.mts +1 -1
  378. package/esm/mail/mail.d.mts.map +1 -1
  379. package/esm/mail/mail.mjs +1 -1
  380. package/esm/mail/mail.mjs.map +1 -1
  381. package/esm/mail/mailer-pool.d.mts +1 -1
  382. package/esm/mail/mailer-pool.d.mts.map +1 -1
  383. package/esm/mail/mailer-pool.mjs +1 -1
  384. package/esm/mail/mailer-pool.mjs.map +1 -1
  385. package/esm/mail/react-mail.d.mts +1 -1
  386. package/esm/mail/react-mail.d.mts.map +1 -1
  387. package/esm/mail/react-mail.mjs +1 -1
  388. package/esm/mail/react-mail.mjs.map +1 -1
  389. package/esm/mail/send-mail.d.mts +1 -1
  390. package/esm/mail/send-mail.d.mts.map +1 -1
  391. package/esm/mail/send-mail.mjs +1 -1
  392. package/esm/mail/send-mail.mjs.map +1 -1
  393. package/esm/mail/test-mailbox.d.mts +1 -1
  394. package/esm/mail/test-mailbox.d.mts.map +1 -1
  395. package/esm/mail/test-mailbox.mjs +1 -1
  396. package/esm/mail/test-mailbox.mjs.map +1 -1
  397. package/esm/mail/types.d.mts +1 -1
  398. package/esm/mail/types.d.mts.map +1 -1
  399. package/esm/mail/types.mjs +1 -1
  400. package/esm/mail/types.mjs.map +1 -1
  401. package/esm/react/index.d.mts +1 -1
  402. package/esm/react/index.d.mts.map +1 -1
  403. package/esm/react/index.mjs +1 -1
  404. package/esm/react/index.mjs.map +1 -1
  405. package/esm/repositories/adapters/cascade/cascade-adapter.d.mts +1 -1
  406. package/esm/repositories/adapters/cascade/cascade-adapter.d.mts.map +1 -1
  407. package/esm/repositories/adapters/cascade/cascade-adapter.mjs +1 -1
  408. package/esm/repositories/adapters/cascade/cascade-adapter.mjs.map +1 -1
  409. package/esm/repositories/adapters/cascade/cascade-query-builder.d.mts +1 -1
  410. package/esm/repositories/adapters/cascade/cascade-query-builder.d.mts.map +1 -1
  411. package/esm/repositories/adapters/cascade/cascade-query-builder.mjs +1 -1
  412. package/esm/repositories/adapters/cascade/cascade-query-builder.mjs.map +1 -1
  413. package/esm/repositories/adapters/cascade/filter-applicator.mjs +1 -1
  414. package/esm/repositories/adapters/cascade/filter-applicator.mjs.map +1 -1
  415. package/esm/repositories/contracts/query-builder.contract.d.mts +1 -1
  416. package/esm/repositories/contracts/query-builder.contract.d.mts.map +1 -1
  417. package/esm/repositories/contracts/repository-adapter.contract.d.mts +1 -1
  418. package/esm/repositories/contracts/repository-adapter.contract.d.mts.map +1 -1
  419. package/esm/repositories/contracts/types.d.mts +1 -1
  420. package/esm/repositories/contracts/types.d.mts.map +1 -1
  421. package/esm/repositories/repository.manager.d.mts +1 -1
  422. package/esm/repositories/repository.manager.d.mts.map +1 -1
  423. package/esm/repositories/repository.manager.mjs +1 -1
  424. package/esm/repositories/repository.manager.mjs.map +1 -1
  425. package/esm/resource/define-resource.d.mts +1 -1
  426. package/esm/resource/define-resource.d.mts.map +1 -1
  427. package/esm/resource/define-resource.mjs +1 -1
  428. package/esm/resource/define-resource.mjs.map +1 -1
  429. package/esm/resource/register-resource.d.mts +1 -1
  430. package/esm/resource/register-resource.d.mts.map +1 -1
  431. package/esm/resource/register-resource.mjs +1 -1
  432. package/esm/resource/register-resource.mjs.map +1 -1
  433. package/esm/resource/resource-field-builder.d.mts +1 -1
  434. package/esm/resource/resource-field-builder.d.mts.map +1 -1
  435. package/esm/resource/resource-field-builder.mjs +1 -1
  436. package/esm/resource/resource-field-builder.mjs.map +1 -1
  437. package/esm/resource/resource.d.mts +1 -1
  438. package/esm/resource/resource.d.mts.map +1 -1
  439. package/esm/resource/resource.mjs +1 -1
  440. package/esm/resource/resource.mjs.map +1 -1
  441. package/esm/resource/types.d.mts +1 -1
  442. package/esm/resource/types.d.mts.map +1 -1
  443. package/esm/restful/restful.d.mts +1 -1
  444. package/esm/restful/restful.d.mts.map +1 -1
  445. package/esm/restful/restful.mjs +1 -1
  446. package/esm/restful/restful.mjs.map +1 -1
  447. package/esm/router/route-builder.d.mts +1 -1
  448. package/esm/router/route-builder.d.mts.map +1 -1
  449. package/esm/router/route-builder.mjs +1 -1
  450. package/esm/router/route-builder.mjs.map +1 -1
  451. package/esm/router/route-registry.mjs +1 -1
  452. package/esm/router/route-registry.mjs.map +1 -1
  453. package/esm/router/router.d.mts +1 -1
  454. package/esm/router/router.d.mts.map +1 -1
  455. package/esm/router/router.mjs +1 -1
  456. package/esm/router/router.mjs.map +1 -1
  457. package/esm/router/types.d.mts +1 -1
  458. package/esm/router/types.d.mts.map +1 -1
  459. package/esm/socket/types.d.mts +1 -1
  460. package/esm/socket/types.d.mts.map +1 -1
  461. package/esm/socket/utils.d.mts +1 -1
  462. package/esm/socket/utils.d.mts.map +1 -1
  463. package/esm/socket/utils.mjs +1 -1
  464. package/esm/socket/utils.mjs.map +1 -1
  465. package/esm/storage/config.d.mts +1 -1
  466. package/esm/storage/config.d.mts.map +1 -1
  467. package/esm/storage/config.mjs +1 -1
  468. package/esm/storage/config.mjs.map +1 -1
  469. package/esm/storage/context/storage-driver-context.d.mts +1 -1
  470. package/esm/storage/context/storage-driver-context.d.mts.map +1 -1
  471. package/esm/storage/context/storage-driver-context.mjs +1 -1
  472. package/esm/storage/context/storage-driver-context.mjs.map +1 -1
  473. package/esm/storage/drivers/cloud-driver.d.mts +1 -1
  474. package/esm/storage/drivers/cloud-driver.d.mts.map +1 -1
  475. package/esm/storage/drivers/cloud-driver.mjs +1 -1
  476. package/esm/storage/drivers/cloud-driver.mjs.map +1 -1
  477. package/esm/storage/drivers/do-spaces-driver.d.mts +1 -1
  478. package/esm/storage/drivers/do-spaces-driver.d.mts.map +1 -1
  479. package/esm/storage/drivers/do-spaces-driver.mjs +1 -1
  480. package/esm/storage/drivers/do-spaces-driver.mjs.map +1 -1
  481. package/esm/storage/drivers/local-driver.d.mts +1 -1
  482. package/esm/storage/drivers/local-driver.d.mts.map +1 -1
  483. package/esm/storage/drivers/local-driver.mjs +1 -1
  484. package/esm/storage/drivers/local-driver.mjs.map +1 -1
  485. package/esm/storage/drivers/r2-driver.d.mts +1 -1
  486. package/esm/storage/drivers/r2-driver.d.mts.map +1 -1
  487. package/esm/storage/drivers/r2-driver.mjs +1 -1
  488. package/esm/storage/drivers/r2-driver.mjs.map +1 -1
  489. package/esm/storage/drivers/s3-driver.d.mts +1 -1
  490. package/esm/storage/drivers/s3-driver.d.mts.map +1 -1
  491. package/esm/storage/drivers/s3-driver.mjs +1 -1
  492. package/esm/storage/drivers/s3-driver.mjs.map +1 -1
  493. package/esm/storage/scoped-storage.d.mts +1 -1
  494. package/esm/storage/scoped-storage.d.mts.map +1 -1
  495. package/esm/storage/scoped-storage.mjs +1 -1
  496. package/esm/storage/scoped-storage.mjs.map +1 -1
  497. package/esm/storage/storage-file.d.mts +1 -1
  498. package/esm/storage/storage-file.d.mts.map +1 -1
  499. package/esm/storage/storage-file.mjs +1 -1
  500. package/esm/storage/storage-file.mjs.map +1 -1
  501. package/esm/storage/storage.d.mts +1 -1
  502. package/esm/storage/storage.d.mts.map +1 -1
  503. package/esm/storage/storage.mjs +1 -1
  504. package/esm/storage/storage.mjs.map +1 -1
  505. package/esm/storage/types.d.mts +1 -1
  506. package/esm/storage/types.d.mts.map +1 -1
  507. package/esm/storage/utils/mime.d.mts +1 -1
  508. package/esm/storage/utils/mime.d.mts.map +1 -1
  509. package/esm/storage/utils/mime.mjs +1 -1
  510. package/esm/storage/utils/mime.mjs.map +1 -1
  511. package/esm/tests/start-http-development-server.d.mts +1 -1
  512. package/esm/tests/start-http-development-server.d.mts.map +1 -1
  513. package/esm/tests/start-http-development-server.mjs +4 -2
  514. package/esm/tests/start-http-development-server.mjs.map +1 -1
  515. package/esm/tests/test-helpers.d.mts +1 -1
  516. package/esm/tests/test-helpers.d.mts.map +1 -1
  517. package/esm/tests/test-helpers.mjs +1 -1
  518. package/esm/tests/test-helpers.mjs.map +1 -1
  519. package/esm/tests/vitest-setup.d.mts +1 -1
  520. package/esm/tests/vitest-setup.d.mts.map +1 -1
  521. package/esm/tests/vitest-setup.mjs +1 -1
  522. package/esm/tests/vitest-setup.mjs.map +1 -1
  523. package/esm/use-cases/types.d.mts +1 -1
  524. package/esm/use-cases/types.d.mts.map +1 -1
  525. package/esm/use-cases/use-case-broadcast.d.mts +1 -1
  526. package/esm/use-cases/use-case-broadcast.d.mts.map +1 -1
  527. package/esm/use-cases/use-case-broadcast.mjs +1 -1
  528. package/esm/use-cases/use-case-broadcast.mjs.map +1 -1
  529. package/esm/use-cases/use-case-events.d.mts +1 -1
  530. package/esm/use-cases/use-case-events.d.mts.map +1 -1
  531. package/esm/use-cases/use-case-events.mjs +1 -1
  532. package/esm/use-cases/use-case-events.mjs.map +1 -1
  533. package/esm/use-cases/use-case-pipeline.d.mts +1 -1
  534. package/esm/use-cases/use-case-pipeline.d.mts.map +1 -1
  535. package/esm/use-cases/use-case-pipeline.mjs +1 -1
  536. package/esm/use-cases/use-case-pipeline.mjs.map +1 -1
  537. package/esm/use-cases/use-case.d.mts +1 -1
  538. package/esm/use-cases/use-case.d.mts.map +1 -1
  539. package/esm/use-cases/use-case.errors.d.mts +1 -1
  540. package/esm/use-cases/use-case.errors.d.mts.map +1 -1
  541. package/esm/use-cases/use-case.errors.mjs +1 -1
  542. package/esm/use-cases/use-case.errors.mjs.map +1 -1
  543. package/esm/use-cases/use-case.mjs +1 -1
  544. package/esm/use-cases/use-case.mjs.map +1 -1
  545. package/esm/use-cases/use-cases-registry.d.mts +1 -1
  546. package/esm/use-cases/use-cases-registry.d.mts.map +1 -1
  547. package/esm/use-cases/use-cases-registry.mjs +1 -1
  548. package/esm/use-cases/use-cases-registry.mjs.map +1 -1
  549. package/esm/utils/app-log.d.mts +1 -1
  550. package/esm/utils/app-log.d.mts.map +1 -1
  551. package/esm/utils/app-log.mjs +1 -1
  552. package/esm/utils/app-log.mjs.map +1 -1
  553. package/esm/utils/database-log.d.mts +1 -1
  554. package/esm/utils/database-log.d.mts.map +1 -1
  555. package/esm/utils/database-log.mjs +1 -1
  556. package/esm/utils/database-log.mjs.map +1 -1
  557. package/esm/utils/environment.d.mts +1 -1
  558. package/esm/utils/environment.d.mts.map +1 -1
  559. package/esm/utils/environment.mjs +1 -1
  560. package/esm/utils/environment.mjs.map +1 -1
  561. package/esm/utils/framework-vesion.mjs +2 -11
  562. package/esm/utils/framework-vesion.mjs.map +1 -1
  563. package/esm/utils/get-localized.d.mts +1 -1
  564. package/esm/utils/get-localized.d.mts.map +1 -1
  565. package/esm/utils/get-localized.mjs +1 -1
  566. package/esm/utils/get-localized.mjs.map +1 -1
  567. package/esm/utils/paths.d.mts +1 -1
  568. package/esm/utils/paths.d.mts.map +1 -1
  569. package/esm/utils/paths.mjs +3 -3
  570. package/esm/utils/paths.mjs.map +1 -1
  571. package/esm/utils/promise-all-object.d.mts +1 -1
  572. package/esm/utils/promise-all-object.d.mts.map +1 -1
  573. package/esm/utils/promise-all-object.mjs +1 -1
  574. package/esm/utils/promise-all-object.mjs.map +1 -1
  575. package/esm/utils/queue.d.mts +1 -1
  576. package/esm/utils/queue.d.mts.map +1 -1
  577. package/esm/utils/queue.mjs +1 -1
  578. package/esm/utils/queue.mjs.map +1 -1
  579. package/esm/utils/sleep.d.mts +1 -1
  580. package/esm/utils/sleep.d.mts.map +1 -1
  581. package/esm/utils/sleep.mjs +1 -1
  582. package/esm/utils/sleep.mjs.map +1 -1
  583. package/esm/utils/sluggable.d.mts +1 -1
  584. package/esm/utils/sluggable.d.mts.map +1 -1
  585. package/esm/utils/sluggable.mjs +1 -1
  586. package/esm/utils/sluggable.mjs.map +1 -1
  587. package/esm/utils/to-json.d.mts +1 -1
  588. package/esm/utils/to-json.d.mts.map +1 -1
  589. package/esm/utils/to-json.mjs +1 -1
  590. package/esm/utils/to-json.mjs.map +1 -1
  591. package/esm/utils/types.d.mts +1 -1
  592. package/esm/utils/types.d.mts.map +1 -1
  593. package/esm/utils/urls.d.mts +1 -1
  594. package/esm/utils/urls.d.mts.map +1 -1
  595. package/esm/utils/urls.mjs +1 -1
  596. package/esm/utils/urls.mjs.map +1 -1
  597. package/esm/validation/database/exists-except-current-id.d.mts +1 -1
  598. package/esm/validation/database/exists-except-current-id.d.mts.map +1 -1
  599. package/esm/validation/database/exists-except-current-id.mjs +1 -1
  600. package/esm/validation/database/exists-except-current-id.mjs.map +1 -1
  601. package/esm/validation/database/exists-except-current-user.d.mts +1 -1
  602. package/esm/validation/database/exists-except-current-user.d.mts.map +1 -1
  603. package/esm/validation/database/exists-except-current-user.mjs +1 -1
  604. package/esm/validation/database/exists-except-current-user.mjs.map +1 -1
  605. package/esm/validation/database/types.d.mts +1 -1
  606. package/esm/validation/database/types.d.mts.map +1 -1
  607. package/esm/validation/database/unique-except-current-id.d.mts +1 -1
  608. package/esm/validation/database/unique-except-current-id.d.mts.map +1 -1
  609. package/esm/validation/database/unique-except-current-id.mjs +1 -1
  610. package/esm/validation/database/unique-except-current-id.mjs.map +1 -1
  611. package/esm/validation/database/unique-except-current-user.d.mts +1 -1
  612. package/esm/validation/database/unique-except-current-user.d.mts.map +1 -1
  613. package/esm/validation/database/unique-except-current-user.mjs +1 -1
  614. package/esm/validation/database/unique-except-current-user.mjs.map +1 -1
  615. package/esm/validation/file/file.d.mts +1 -1
  616. package/esm/validation/file/file.d.mts.map +1 -1
  617. package/esm/validation/file/file.mjs +1 -1
  618. package/esm/validation/file/file.mjs.map +1 -1
  619. package/esm/validation/init.mjs +1 -1
  620. package/esm/validation/init.mjs.map +1 -1
  621. package/esm/validation/plugins/database-plugin.mjs +1 -1
  622. package/esm/validation/plugins/database-plugin.mjs.map +1 -1
  623. package/esm/validation/plugins/file-plugin.mjs +1 -1
  624. package/esm/validation/plugins/file-plugin.mjs.map +1 -1
  625. package/esm/validation/plugins/localized-plugin.mjs +1 -1
  626. package/esm/validation/plugins/localized-plugin.mjs.map +1 -1
  627. package/esm/validation/types.d.mts +1 -1
  628. package/esm/validation/types.d.mts.map +1 -1
  629. package/esm/validation/validateAll.mjs +3 -3
  630. package/esm/validation/validateAll.mjs.map +1 -1
  631. package/esm/validation/validators/file-validator.d.mts +1 -1
  632. package/esm/validation/validators/file-validator.d.mts.map +1 -1
  633. package/esm/validation/validators/file-validator.mjs +1 -1
  634. package/esm/validation/validators/file-validator.mjs.map +1 -1
  635. package/esm/vite/index.mjs +3 -0
  636. package/esm/vite/lower-stage3-decorators.d.mts +53 -0
  637. package/esm/vite/lower-stage3-decorators.d.mts.map +1 -0
  638. package/esm/vite/lower-stage3-decorators.mjs +63 -0
  639. package/esm/vite/lower-stage3-decorators.mjs.map +1 -0
  640. package/esm/warlock-config/default-configurations.mjs +1 -1
  641. package/esm/warlock-config/default-configurations.mjs.map +1 -1
  642. package/esm/warlock-config/define-config.d.mts +1 -1
  643. package/esm/warlock-config/define-config.d.mts.map +1 -1
  644. package/esm/warlock-config/define-config.mjs +1 -1
  645. package/esm/warlock-config/define-config.mjs.map +1 -1
  646. package/esm/warlock-config/types.d.mts +1 -1
  647. package/esm/warlock-config/types.d.mts.map +1 -1
  648. package/esm/warlock-config/warlock-config.manager.d.mts +1 -1
  649. package/esm/warlock-config/warlock-config.manager.d.mts.map +1 -1
  650. package/esm/warlock-config/warlock-config.manager.mjs +1 -1
  651. package/esm/warlock-config/warlock-config.manager.mjs.map +1 -1
  652. package/llms-full.txt +64 -4
  653. package/llms.txt +1 -0
  654. package/package.json +9 -33
  655. package/skills/lower-stage3-decorators/SKILL.md +54 -0
  656. package/skills/test-http/SKILL.md +3 -2
  657. package/skills/test-service/SKILL.md +3 -2
  658. package/esm/_virtual/_rolldown/runtime.mjs +0 -7
  659. package/esm/cli/cli-commands.manager.mjs +0 -290
  660. package/esm/cli/cli-commands.manager.mjs.map +0 -1
  661. package/esm/cli/cli-commands.utils.mjs +0 -217
  662. package/esm/cli/cli-commands.utils.mjs.map +0 -1
  663. package/esm/cli/commands/add.command.mjs +0 -27
  664. package/esm/cli/commands/add.command.mjs.map +0 -1
  665. package/esm/cli/commands/build.command.mjs +0 -14
  666. package/esm/cli/commands/build.command.mjs.map +0 -1
  667. package/esm/cli/commands/create-database.command.mjs +0 -24
  668. package/esm/cli/commands/create-database.command.mjs.map +0 -1
  669. package/esm/cli/commands/dev-server.command.mjs +0 -48
  670. package/esm/cli/commands/dev-server.command.mjs.map +0 -1
  671. package/esm/cli/commands/drop-tables.command.mjs +0 -23
  672. package/esm/cli/commands/drop-tables.command.mjs.map +0 -1
  673. package/esm/cli/commands/generate/generate.command.mjs +0 -201
  674. package/esm/cli/commands/generate/generate.command.mjs.map +0 -1
  675. package/esm/cli/commands/generate/generators/column-dsl-parser.mjs +0 -49
  676. package/esm/cli/commands/generate/generators/column-dsl-parser.mjs.map +0 -1
  677. package/esm/cli/commands/generate/generators/controller.generator.mjs +0 -48
  678. package/esm/cli/commands/generate/generators/controller.generator.mjs.map +0 -1
  679. package/esm/cli/commands/generate/generators/migration.generator.mjs +0 -81
  680. package/esm/cli/commands/generate/generators/migration.generator.mjs.map +0 -1
  681. package/esm/cli/commands/generate/generators/model.generator.mjs +0 -60
  682. package/esm/cli/commands/generate/generators/model.generator.mjs.map +0 -1
  683. package/esm/cli/commands/generate/generators/module.generator.mjs +0 -113
  684. package/esm/cli/commands/generate/generators/module.generator.mjs.map +0 -1
  685. package/esm/cli/commands/generate/generators/repository.generator.mjs +0 -42
  686. package/esm/cli/commands/generate/generators/repository.generator.mjs.map +0 -1
  687. package/esm/cli/commands/generate/generators/resource.generator.mjs +0 -42
  688. package/esm/cli/commands/generate/generators/resource.generator.mjs.map +0 -1
  689. package/esm/cli/commands/generate/generators/service.generator.mjs +0 -42
  690. package/esm/cli/commands/generate/generators/service.generator.mjs.map +0 -1
  691. package/esm/cli/commands/generate/templates/stubs.mjs +0 -514
  692. package/esm/cli/commands/generate/templates/stubs.mjs.map +0 -1
  693. package/esm/cli/commands/generate/utils/name-parser.mjs +0 -69
  694. package/esm/cli/commands/generate/utils/name-parser.mjs.map +0 -1
  695. package/esm/cli/commands/generate/utils/path-resolver.mjs +0 -56
  696. package/esm/cli/commands/generate/utils/path-resolver.mjs.map +0 -1
  697. package/esm/cli/commands/generate/utils/prompt.mjs +0 -28
  698. package/esm/cli/commands/generate/utils/prompt.mjs.map +0 -1
  699. package/esm/cli/commands/generate/utils/writer.mjs +0 -60
  700. package/esm/cli/commands/generate/utils/writer.mjs.map +0 -1
  701. package/esm/cli/commands/migrate.command.mjs +0 -60
  702. package/esm/cli/commands/migrate.command.mjs.map +0 -1
  703. package/esm/cli/commands/seed.command.mjs +0 -41
  704. package/esm/cli/commands/seed.command.mjs.map +0 -1
  705. package/esm/cli/commands/start-production.command.mjs +0 -50
  706. package/esm/cli/commands/start-production.command.mjs.map +0 -1
  707. package/esm/cli/commands/storage-put.action.mjs +0 -75
  708. package/esm/cli/commands/storage-put.action.mjs.map +0 -1
  709. package/esm/cli/commands/storage-put.command.mjs +0 -46
  710. package/esm/cli/commands/storage-put.command.mjs.map +0 -1
  711. package/esm/cli/commands/typings-generator.command.mjs +0 -38
  712. package/esm/cli/commands/typings-generator.command.mjs.map +0 -1
  713. package/esm/cli/commands-loader.mjs +0 -50
  714. package/esm/cli/commands-loader.mjs.map +0 -1
  715. package/esm/cli/framework-cli-commands.mjs +0 -37
  716. package/esm/cli/framework-cli-commands.mjs.map +0 -1
  717. package/esm/cli/parse-cli-args.mjs +0 -62
  718. package/esm/cli/parse-cli-args.mjs.map +0 -1
  719. package/esm/cli/start.d.mts +0 -1
  720. package/esm/cli/start.mjs +0 -8
  721. package/esm/cli/start.mjs.map +0 -1
  722. package/esm/cli/string-similarity.mjs +0 -56
  723. package/esm/cli/string-similarity.mjs.map +0 -1
  724. package/esm/database/create-database-action.mjs +0 -32
  725. package/esm/database/create-database-action.mjs.map +0 -1
  726. package/esm/database/drop-tables-action.mjs +0 -35
  727. package/esm/database/drop-tables-action.mjs.map +0 -1
  728. package/esm/database/migrate-action.mjs +0 -99
  729. package/esm/database/migrate-action.mjs.map +0 -1
  730. package/esm/database/seed-command-action.mjs +0 -74
  731. package/esm/database/seed-command-action.mjs.map +0 -1
  732. package/esm/database/seeds/seeders.manager.mjs +0 -129
  733. package/esm/database/seeds/seeders.manager.mjs.map +0 -1
  734. package/esm/database/seeds/seeds-table-migration.mjs +0 -31
  735. package/esm/database/seeds/seeds-table-migration.mjs.map +0 -1
  736. package/esm/database/seeds/utils.mjs +0 -6
  737. package/esm/database/seeds/utils.mjs.map +0 -1
  738. package/esm/dev-server/development-server.mjs +0 -115
  739. package/esm/dev-server/development-server.mjs.map +0 -1
  740. package/esm/dev-server/health-checker/workers/eslint-health.worker.d.mts +0 -1
  741. package/esm/dev-server/health-checker/workers/ts-health.worker.d.mts +0 -1
  742. package/esm/dev-server/layer-executor.mjs +0 -114
  743. package/esm/dev-server/layer-executor.mjs.map +0 -1
  744. package/esm/dev-server/loader/hook-thread.d.mts +0 -48
  745. package/esm/dev-server/loader/hook-thread.d.mts.map +0 -1
  746. package/esm/dev-server/loader/hook-thread.mjs +0 -47
  747. package/esm/dev-server/loader/hook-thread.mjs.map +0 -1
  748. package/esm/dev-server/loader/load-hook.d.mts +0 -58
  749. package/esm/dev-server/loader/load-hook.d.mts.map +0 -1
  750. package/esm/dev-server/loader/load-hook.mjs +0 -86
  751. package/esm/dev-server/loader/load-hook.mjs.map +0 -1
  752. package/esm/dev-server/loader/own-resolver.mjs +0 -69
  753. package/esm/dev-server/loader/own-resolver.mjs.map +0 -1
  754. package/esm/dev-server/loader/resolve-capture.mjs +0 -43
  755. package/esm/dev-server/loader/resolve-capture.mjs.map +0 -1
  756. package/esm/dev-server/loader/resolve-hook.d.mts +0 -41
  757. package/esm/dev-server/loader/resolve-hook.d.mts.map +0 -1
  758. package/esm/dev-server/loader/resolve-hook.mjs +0 -87
  759. package/esm/dev-server/loader/resolve-hook.mjs.map +0 -1
  760. package/esm/dev-server/loader/source-slug.mjs +0 -22
  761. package/esm/dev-server/loader/source-slug.mjs.map +0 -1
  762. package/esm/dev-server/loader/version-registry.mjs +0 -45
  763. package/esm/dev-server/loader/version-registry.mjs.map +0 -1
  764. package/esm/dev-server/start-development-server.mjs +0 -63
  765. package/esm/dev-server/start-development-server.mjs.map +0 -1
  766. package/esm/dev-server/type-generator.mjs +0 -453
  767. package/esm/dev-server/type-generator.mjs.map +0 -1
  768. package/esm/generations/add-command.action.mjs +0 -376
  769. package/esm/generations/add-command.action.mjs.map +0 -1
  770. package/esm/generations/stubs.mjs +0 -103
  771. package/esm/generations/stubs.mjs.map +0 -1
  772. package/esm/manifest/manifest-manager.mjs +0 -79
  773. package/esm/manifest/manifest-manager.mjs.map +0 -1
  774. package/esm/production/build-app-production.mjs +0 -14
  775. package/esm/production/build-app-production.mjs.map +0 -1
  776. package/esm/production/esbuild-plugins.mjs +0 -37
  777. package/esm/production/esbuild-plugins.mjs.map +0 -1
  778. package/esm/production/production-builder.mjs +0 -264
  779. package/esm/production/production-builder.mjs.map +0 -1
  780. package/esm/production/resolve-build-config.mjs +0 -28
  781. package/esm/production/resolve-build-config.mjs.map +0 -1
@@ -1,62 +0,0 @@
1
- import { toCamelCase } from "@mongez/reinforcements";
2
-
3
- //#region ../../@warlock.js/core/src/cli/parse-cli-args.ts
4
- /**
5
- * Parse CLI arguments from process.argv
6
- *
7
- * @example
8
- * parseCliArgs(["node", "warlock", "migrate", "--rollback", "file.ts"])
9
- * // Returns: { name: "migrate", args: [], options: { rollback: "file.ts" } }
10
- *
11
- * @example
12
- * parseCliArgs(["node", "warlock", "dev", "--port=3000", "--fresh"])
13
- * // Returns: { name: "dev", args: [], options: { port: "3000", fresh: true } }
14
- */
15
- function parseCliArgs(argv) {
16
- const potentialCommand = argv[2] || "";
17
- const isFirstArgOption = potentialCommand.startsWith("-");
18
- const command = isFirstArgOption ? "" : potentialCommand;
19
- const args = [];
20
- const options = {};
21
- const startIndex = isFirstArgOption ? 2 : 3;
22
- for (let i = startIndex; i < argv.length; i++) {
23
- const arg = argv[i];
24
- if (arg.startsWith("--")) {
25
- const withoutDashes = arg.slice(2);
26
- const equalIndex = withoutDashes.indexOf("=");
27
- if (equalIndex !== -1) {
28
- const key = toCamelCase(withoutDashes.slice(0, equalIndex));
29
- options[key] = withoutDashes.slice(equalIndex + 1);
30
- } else {
31
- const key = toCamelCase(withoutDashes);
32
- const nextArg = argv[i + 1];
33
- if (nextArg && !nextArg.startsWith("-")) {
34
- options[key] = nextArg;
35
- i++;
36
- } else options[key] = true;
37
- }
38
- } else if (arg.startsWith("-") && arg.length > 1) {
39
- const flags = arg.slice(1);
40
- const equalIndex = flags.indexOf("=");
41
- if (equalIndex !== -1) {
42
- const key = toCamelCase(flags.slice(0, equalIndex));
43
- options[key] = flags.slice(equalIndex + 1);
44
- } else if (flags.length === 1) {
45
- const nextArg = argv[i + 1];
46
- if (nextArg && !nextArg.startsWith("-")) {
47
- options[toCamelCase(flags)] = nextArg;
48
- i++;
49
- } else options[toCamelCase(flags)] = true;
50
- } else for (const flag of flags) options[toCamelCase(flag)] = true;
51
- } else args.push(arg);
52
- }
53
- return {
54
- name: command,
55
- args,
56
- options
57
- };
58
- }
59
-
60
- //#endregion
61
- export { parseCliArgs };
62
- //# sourceMappingURL=parse-cli-args.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parse-cli-args.mjs","names":[],"sources":["../../../../../../@warlock.js/core/src/cli/parse-cli-args.ts"],"sourcesContent":["import { toCamelCase } from \"@mongez/reinforcements\";\n\nexport type ParsedCliArgs = {\n name: string;\n args: string[];\n options: Record<string, string | boolean>;\n};\n\n/**\n * Parse CLI arguments from process.argv\n *\n * @example\n * parseCliArgs([\"node\", \"warlock\", \"migrate\", \"--rollback\", \"file.ts\"])\n * // Returns: { name: \"migrate\", args: [], options: { rollback: \"file.ts\" } }\n *\n * @example\n * parseCliArgs([\"node\", \"warlock\", \"dev\", \"--port=3000\", \"--fresh\"])\n * // Returns: { name: \"dev\", args: [], options: { port: \"3000\", fresh: true } }\n */\nexport function parseCliArgs(argv: string[]): ParsedCliArgs {\n // Command is at index 2 (after \"node\" and script path)\n // But if index 2 starts with \"-\", it's an option, not a command\n const potentialCommand = argv[2] || \"\";\n const isFirstArgOption = potentialCommand.startsWith(\"-\");\n const command = isFirstArgOption ? \"\" : potentialCommand;\n const args: string[] = [];\n const options: Record<string, string | boolean> = {};\n\n // Parse arguments starting from index 3 (or 2 if first arg was an option)\n const startIndex = isFirstArgOption ? 2 : 3;\n for (let i = startIndex; i < argv.length; i++) {\n const arg = argv[i];\n\n if (arg.startsWith(\"--\")) {\n // Long option: --key or --key=value\n const withoutDashes = arg.slice(2);\n const equalIndex = withoutDashes.indexOf(\"=\");\n\n if (equalIndex !== -1) {\n // --key=value format\n const key = toCamelCase(withoutDashes.slice(0, equalIndex));\n const value = withoutDashes.slice(equalIndex + 1);\n options[key] = value;\n } else {\n // --key format (check if next arg is a value)\n const key = toCamelCase(withoutDashes);\n const nextArg = argv[i + 1];\n\n // If next arg exists and doesn't start with -, treat it as value\n if (nextArg && !nextArg.startsWith(\"-\")) {\n options[key] = nextArg;\n i++; // Skip next arg\n } else {\n options[key] = true;\n }\n }\n } else if (arg.startsWith(\"-\") && arg.length > 1) {\n // Short option: -f, -t=value, or -abc (multiple flags)\n const flags = arg.slice(1);\n const equalIndex = flags.indexOf(\"=\");\n\n if (equalIndex !== -1) {\n // -t=value format\n const key = toCamelCase(flags.slice(0, equalIndex));\n const value = flags.slice(equalIndex + 1);\n options[key] = value;\n } else if (flags.length === 1) {\n // Single flag: -f\n const nextArg = argv[i + 1];\n\n if (nextArg && !nextArg.startsWith(\"-\")) {\n options[toCamelCase(flags)] = nextArg;\n i++; // Skip next arg\n } else {\n options[toCamelCase(flags)] = true;\n }\n } else {\n // Multiple flags: -abc becomes { a: true, b: true, c: true }\n for (const flag of flags) {\n options[toCamelCase(flag)] = true;\n }\n }\n } else {\n // Positional argument\n args.push(arg);\n }\n }\n\n return { name: command, args, options };\n}\n"],"mappings":";;;;;;;;;;;;;;AAmBA,SAAgB,aAAa,MAA+B;CAG1D,MAAM,mBAAmB,KAAK,MAAM;CACpC,MAAM,mBAAmB,iBAAiB,WAAW,GAAG;CACxD,MAAM,UAAU,mBAAmB,KAAK;CACxC,MAAM,OAAiB,CAAC;CACxB,MAAM,UAA4C,CAAC;CAGnD,MAAM,aAAa,mBAAmB,IAAI;CAC1C,KAAK,IAAI,IAAI,YAAY,IAAI,KAAK,QAAQ,KAAK;EAC7C,MAAM,MAAM,KAAK;EAEjB,IAAI,IAAI,WAAW,IAAI,GAAG;GAExB,MAAM,gBAAgB,IAAI,MAAM,CAAC;GACjC,MAAM,aAAa,cAAc,QAAQ,GAAG;GAE5C,IAAI,eAAe,IAAI;IAErB,MAAM,MAAM,YAAY,cAAc,MAAM,GAAG,UAAU,CAAC;IAE1D,QAAQ,OADM,cAAc,MAAM,aAAa,CAC5B;GACrB,OAAO;IAEL,MAAM,MAAM,YAAY,aAAa;IACrC,MAAM,UAAU,KAAK,IAAI;IAGzB,IAAI,WAAW,CAAC,QAAQ,WAAW,GAAG,GAAG;KACvC,QAAQ,OAAO;KACf;IACF,OACE,QAAQ,OAAO;GAEnB;EACF,OAAO,IAAI,IAAI,WAAW,GAAG,KAAK,IAAI,SAAS,GAAG;GAEhD,MAAM,QAAQ,IAAI,MAAM,CAAC;GACzB,MAAM,aAAa,MAAM,QAAQ,GAAG;GAEpC,IAAI,eAAe,IAAI;IAErB,MAAM,MAAM,YAAY,MAAM,MAAM,GAAG,UAAU,CAAC;IAElD,QAAQ,OADM,MAAM,MAAM,aAAa,CACpB;GACrB,OAAO,IAAI,MAAM,WAAW,GAAG;IAE7B,MAAM,UAAU,KAAK,IAAI;IAEzB,IAAI,WAAW,CAAC,QAAQ,WAAW,GAAG,GAAG;KACvC,QAAQ,YAAY,KAAK,KAAK;KAC9B;IACF,OACE,QAAQ,YAAY,KAAK,KAAK;GAElC,OAEE,KAAK,MAAM,QAAQ,OACjB,QAAQ,YAAY,IAAI,KAAK;EAGnC,OAEE,KAAK,KAAK,GAAG;CAEjB;CAEA,OAAO;EAAE,MAAM;EAAS;EAAM;CAAQ;AACxC"}
@@ -1 +0,0 @@
1
- export { };
package/esm/cli/start.mjs DELETED
@@ -1,8 +0,0 @@
1
- import { CLICommandsManager } from "./cli-commands.manager.mjs";
2
-
3
- //#region ../../@warlock.js/core/src/cli/start.ts
4
- await new CLICommandsManager().start();
5
-
6
- //#endregion
7
- export { };
8
- //# sourceMappingURL=start.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"start.mjs","names":[],"sources":["../../../../../../@warlock.js/core/src/cli/start.ts"],"sourcesContent":["import { CLICommandsManager } from \"./cli-commands.manager\";\n\nconst commandsManager = new CLICommandsManager();\nawait commandsManager.start();\n"],"mappings":";;;AAGA,MAAM,IADsB,mBACR,EAAE,MAAM"}
@@ -1,56 +0,0 @@
1
- //#region ../../@warlock.js/core/src/cli/string-similarity.ts
2
- /**
3
- * String similarity utilities for CLI command suggestions
4
- * Uses Levenshtein distance algorithm for fuzzy matching
5
- */
6
- /**
7
- * Calculate the Levenshtein distance between two strings
8
- * Lower distance = more similar
9
- *
10
- * @param str1 - First string
11
- * @param str2 - Second string
12
- * @returns Distance (number of edits required to transform str1 to str2)
13
- */
14
- function levenshteinDistance(str1, str2) {
15
- const s1 = str1.toLowerCase();
16
- const s2 = str2.toLowerCase();
17
- const len1 = s1.length;
18
- const len2 = s2.length;
19
- const matrix = Array.from({ length: len1 + 1 }, (_, i) => Array.from({ length: len2 + 1 }, (_, j) => i === 0 ? j : j === 0 ? i : 0));
20
- for (let i = 1; i <= len1; i++) for (let j = 1; j <= len2; j++) {
21
- const cost = s1[i - 1] === s2[j - 1] ? 0 : 1;
22
- matrix[i][j] = Math.min(matrix[i - 1][j] + 1, matrix[i][j - 1] + 1, matrix[i - 1][j - 1] + cost);
23
- }
24
- return matrix[len1][len2];
25
- }
26
- /**
27
- * Find similar strings from a list
28
- *
29
- * @param input - The input string to find matches for
30
- * @param candidates - List of candidate strings
31
- * @param maxDistance - Maximum distance to consider (default: 3)
32
- * @param maxResults - Maximum number of results to return (default: 3)
33
- * @returns Array of suggestions sorted by similarity
34
- *
35
- * @example
36
- * ```typescript
37
- * findSimilar("biuld", ["build", "dev", "start", "test"])
38
- * // Returns: [{ value: "build", distance: 1 }]
39
- * ```
40
- */
41
- function findSimilar(input, candidates, maxDistance = 3, maxResults = 3) {
42
- const results = [];
43
- for (const candidate of candidates) {
44
- const distance = levenshteinDistance(input, candidate);
45
- if (distance <= maxDistance && distance > 0) results.push({
46
- value: candidate,
47
- distance
48
- });
49
- }
50
- results.sort((a, b) => a.distance - b.distance);
51
- return results.slice(0, maxResults);
52
- }
53
-
54
- //#endregion
55
- export { findSimilar };
56
- //# sourceMappingURL=string-similarity.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"string-similarity.mjs","names":[],"sources":["../../../../../../@warlock.js/core/src/cli/string-similarity.ts"],"sourcesContent":["/**\n * String similarity utilities for CLI command suggestions\n * Uses Levenshtein distance algorithm for fuzzy matching\n */\n\n/**\n * Calculate the Levenshtein distance between two strings\n * Lower distance = more similar\n *\n * @param str1 - First string\n * @param str2 - Second string\n * @returns Distance (number of edits required to transform str1 to str2)\n */\nexport function levenshteinDistance(str1: string, str2: string): number {\n const s1 = str1.toLowerCase();\n const s2 = str2.toLowerCase();\n\n const len1 = s1.length;\n const len2 = s2.length;\n\n // Create matrix\n const matrix: number[][] = Array.from({ length: len1 + 1 }, (_, i) =>\n Array.from({ length: len2 + 1 }, (_, j) => (i === 0 ? j : j === 0 ? i : 0)),\n );\n\n // Fill matrix\n for (let i = 1; i <= len1; i++) {\n for (let j = 1; j <= len2; j++) {\n const cost = s1[i - 1] === s2[j - 1] ? 0 : 1;\n matrix[i][j] = Math.min(\n matrix[i - 1][j] + 1, // deletion\n matrix[i][j - 1] + 1, // insertion\n matrix[i - 1][j - 1] + cost, // substitution\n );\n }\n }\n\n return matrix[len1][len2];\n}\n\n/**\n * Suggestion result with similarity score\n */\nexport type Suggestion = {\n /** The suggested value */\n value: string;\n /** Distance score (lower = more similar) */\n distance: number;\n};\n\n/**\n * Find similar strings from a list\n *\n * @param input - The input string to find matches for\n * @param candidates - List of candidate strings\n * @param maxDistance - Maximum distance to consider (default: 3)\n * @param maxResults - Maximum number of results to return (default: 3)\n * @returns Array of suggestions sorted by similarity\n *\n * @example\n * ```typescript\n * findSimilar(\"biuld\", [\"build\", \"dev\", \"start\", \"test\"])\n * // Returns: [{ value: \"build\", distance: 1 }]\n * ```\n */\nexport function findSimilar(\n input: string,\n candidates: string[],\n maxDistance: number = 3,\n maxResults: number = 3,\n): Suggestion[] {\n const results: Suggestion[] = [];\n\n for (const candidate of candidates) {\n const distance = levenshteinDistance(input, candidate);\n\n if (distance <= maxDistance && distance > 0) {\n results.push({ value: candidate, distance });\n }\n }\n\n // Sort by distance (most similar first)\n results.sort((a, b) => a.distance - b.distance);\n\n return results.slice(0, maxResults);\n}\n\n/**\n * Check if a string starts with any of the given prefixes\n * Useful for command name matching\n */\nexport function startsWithAny(str: string, prefixes: string[]): boolean {\n return prefixes.some((prefix) => str.toLowerCase().startsWith(prefix.toLowerCase()));\n}\n"],"mappings":";;;;;;;;;;;;;AAaA,SAAgB,oBAAoB,MAAc,MAAsB;CACtE,MAAM,KAAK,KAAK,YAAY;CAC5B,MAAM,KAAK,KAAK,YAAY;CAE5B,MAAM,OAAO,GAAG;CAChB,MAAM,OAAO,GAAG;CAGhB,MAAM,SAAqB,MAAM,KAAK,EAAE,QAAQ,OAAO,EAAE,IAAI,GAAG,MAC9D,MAAM,KAAK,EAAE,QAAQ,OAAO,EAAE,IAAI,GAAG,MAAO,MAAM,IAAI,IAAI,MAAM,IAAI,IAAI,CAAE,CAC5E;CAGA,KAAK,IAAI,IAAI,GAAG,KAAK,MAAM,KACzB,KAAK,IAAI,IAAI,GAAG,KAAK,MAAM,KAAK;EAC9B,MAAM,OAAO,GAAG,IAAI,OAAO,GAAG,IAAI,KAAK,IAAI;EAC3C,OAAO,GAAG,KAAK,KAAK,IAClB,OAAO,IAAI,GAAG,KAAK,GACnB,OAAO,GAAG,IAAI,KAAK,GACnB,OAAO,IAAI,GAAG,IAAI,KAAK,IACzB;CACF;CAGF,OAAO,OAAO,MAAM;AACtB;;;;;;;;;;;;;;;;AA2BA,SAAgB,YACd,OACA,YACA,cAAsB,GACtB,aAAqB,GACP;CACd,MAAM,UAAwB,CAAC;CAE/B,KAAK,MAAM,aAAa,YAAY;EAClC,MAAM,WAAW,oBAAoB,OAAO,SAAS;EAErD,IAAI,YAAY,eAAe,WAAW,GACxC,QAAQ,KAAK;GAAE,OAAO;GAAW;EAAS,CAAC;CAE/C;CAGA,QAAQ,MAAM,GAAG,MAAM,EAAE,WAAW,EAAE,QAAQ;CAE9C,OAAO,QAAQ,MAAM,GAAG,UAAU;AACpC"}
@@ -1,32 +0,0 @@
1
- import { config } from "../config/config-getter.mjs";
2
- import "../config/index.mjs";
3
- import { createDatabase } from "@warlock.js/cascade";
4
- import { log } from "@warlock.js/logger";
5
- import { colors } from "@mongez/copper";
6
-
7
- //#region ../../@warlock.js/core/src/database/create-database-action.ts
8
- async function createDatabaseAction(command) {
9
- const name = command.args[0];
10
- const { connection = "default" } = command.options;
11
- const connectionName = connection === "default" || connection === true ? void 0 : String(connection);
12
- let databaseName = name;
13
- if (!databaseName) {
14
- if (connection === "default") databaseName = config.get("database")?.database;
15
- }
16
- if (!databaseName) {
17
- log.error("database", "create", "Database name is required. Please provide a name or configure it in the database config.");
18
- return;
19
- }
20
- log.info("database", "create", `Creating database ${colors.cyan(databaseName)}...`);
21
- try {
22
- const { created } = await createDatabase(databaseName, { connection: connectionName });
23
- if (created) log.success("database", "create", `Database ${colors.green(databaseName)} created successfully.`);
24
- else log.warn("database", "create", `Database ${colors.yellow(databaseName)} already exists.`);
25
- } catch (error) {
26
- log.error("database", "create", `Failed to create database ${colors.red(databaseName)}: ${error.message}`);
27
- }
28
- }
29
-
30
- //#endregion
31
- export { createDatabaseAction };
32
- //# sourceMappingURL=create-database-action.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"create-database-action.mjs","names":[],"sources":["../../../../../../@warlock.js/core/src/database/create-database-action.ts"],"sourcesContent":["import { colors } from \"@mongez/copper\";\r\nimport { createDatabase } from \"@warlock.js/cascade\";\r\nimport { log } from \"@warlock.js/logger\";\r\nimport { CommandActionData } from \"../cli/types\";\r\nimport { config } from \"../config\";\r\n\r\nexport async function createDatabaseAction(command: CommandActionData) {\r\n const name = command.args[0];\r\n const { connection = \"default\" } = command.options;\r\n\r\n const connectionName =\r\n connection === \"default\" || connection === true ? undefined : String(connection);\r\n\r\n let databaseName = name;\r\n\r\n if (!databaseName) {\r\n if (connection === \"default\") {\r\n databaseName = config.get(\"database\")?.database;\r\n }\r\n }\r\n\r\n if (!databaseName) {\r\n log.error(\r\n \"database\",\r\n \"create\",\r\n \"Database name is required. Please provide a name or configure it in the database config.\",\r\n );\r\n return;\r\n }\r\n\r\n log.info(\"database\", \"create\", `Creating database ${colors.cyan(databaseName)}...`);\r\n\r\n try {\r\n const { created } = await createDatabase(databaseName, { connection: connectionName });\r\n\r\n if (created) {\r\n log.success(\r\n \"database\",\r\n \"create\",\r\n `Database ${colors.green(databaseName)} created successfully.`,\r\n );\r\n } else {\r\n log.warn(\"database\", \"create\", `Database ${colors.yellow(databaseName)} already exists.`);\r\n }\r\n } catch (error: any) {\r\n log.error(\r\n \"database\",\r\n \"create\",\r\n `Failed to create database ${colors.red(databaseName)}: ${error.message}`,\r\n );\r\n }\r\n}\r\n"],"mappings":";;;;;;;AAMA,eAAsB,qBAAqB,SAA4B;CACrE,MAAM,OAAO,QAAQ,KAAK;CAC1B,MAAM,EAAE,aAAa,cAAc,QAAQ;CAE3C,MAAM,iBACJ,eAAe,aAAa,eAAe,OAAO,SAAY,OAAO,UAAU;CAEjF,IAAI,eAAe;CAEnB,IAAI,CAAC,cACH;MAAI,eAAe,WACjB,eAAe,OAAO,IAAI,UAAU,GAAG;CACzC;CAGF,IAAI,CAAC,cAAc;EACjB,IAAI,MACF,YACA,UACA,0FACF;EACA;CACF;CAEA,IAAI,KAAK,YAAY,UAAU,qBAAqB,OAAO,KAAK,YAAY,EAAE,IAAI;CAElF,IAAI;EACF,MAAM,EAAE,YAAY,MAAM,eAAe,cAAc,EAAE,YAAY,eAAe,CAAC;EAErF,IAAI,SACF,IAAI,QACF,YACA,UACA,YAAY,OAAO,MAAM,YAAY,EAAE,uBACzC;OAEA,IAAI,KAAK,YAAY,UAAU,YAAY,OAAO,OAAO,YAAY,EAAE,iBAAiB;CAE5F,SAAS,OAAY;EACnB,IAAI,MACF,YACA,UACA,6BAA6B,OAAO,IAAI,YAAY,EAAE,IAAI,MAAM,SAClE;CACF;AACF"}
@@ -1,35 +0,0 @@
1
- import { confirm } from "../cli/commands/generate/utils/prompt.mjs";
2
- import { dataSourceRegistry, dropAllTables } from "@warlock.js/cascade";
3
- import { log } from "@warlock.js/logger";
4
- import { colors } from "@mongez/copper";
5
-
6
- //#region ../../@warlock.js/core/src/database/drop-tables-action.ts
7
- async function dropTablesAction(command) {
8
- const { force } = command.options;
9
- if (force) {
10
- const { dropped } = await dropAllTables();
11
- log.success("database", "drop", `Dropped ${colors.yellowBright(dropped)} tables successfully.`);
12
- return;
13
- }
14
- const driver = dataSourceRegistry.get().driver;
15
- const tables = await driver.blueprint.listTables();
16
- if (tables.length === 0) {
17
- log.warn("database", "drop", "No tables found in the database.");
18
- return;
19
- }
20
- log.info("database", "drop", `Found ${colors.yellowBright(tables.length)} tables:`);
21
- for (const table of tables) {
22
- const count = await driver.queryBuilder(table).count();
23
- console.log(` - ${colors.cyan(table)}: ${colors.green(count)} rows`);
24
- }
25
- if (!await confirm(`Are you sure you want to drop all ${colors.red(tables.length)} tables?`)) {
26
- log.info("database", "drop", "Operation cancelled.");
27
- return;
28
- }
29
- const { dropped } = await dropAllTables();
30
- log.success("database", "drop", `Dropped ${colors.yellowBright(dropped)} tables successfully.`);
31
- }
32
-
33
- //#endregion
34
- export { dropTablesAction };
35
- //# sourceMappingURL=drop-tables-action.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"drop-tables-action.mjs","names":[],"sources":["../../../../../../@warlock.js/core/src/database/drop-tables-action.ts"],"sourcesContent":["import { colors } from \"@mongez/copper\";\r\nimport { dataSourceRegistry, dropAllTables } from \"@warlock.js/cascade\";\r\nimport { log } from \"@warlock.js/logger\";\r\nimport { confirm } from \"../cli/commands/generate/utils/prompt\";\r\nimport { CommandActionData } from \"../cli/types\";\r\n\r\nexport async function dropTablesAction(command: CommandActionData) {\r\n const { force } = command.options;\r\n\r\n if (force) {\r\n const { dropped } = await dropAllTables();\r\n log.success(\r\n \"database\",\r\n \"drop\",\r\n `Dropped ${colors.yellowBright(dropped)} tables successfully.`,\r\n );\r\n return;\r\n }\r\n\r\n // Preview phase — we keep direct driver access so we can show per-table\r\n // row counts before asking for confirmation. The actual drop still goes\r\n // through the Cascade Operations API.\r\n const driver = dataSourceRegistry.get().driver;\r\n const tables = await driver.blueprint.listTables();\r\n\r\n if (tables.length === 0) {\r\n log.warn(\"database\", \"drop\", \"No tables found in the database.\");\r\n return;\r\n }\r\n\r\n log.info(\"database\", \"drop\", `Found ${colors.yellowBright(tables.length)} tables:`);\r\n\r\n for (const table of tables) {\r\n const count = await driver.queryBuilder(table).count();\r\n console.log(` - ${colors.cyan(table)}: ${colors.green(count)} rows`);\r\n }\r\n\r\n const confirmed = await confirm(\r\n `Are you sure you want to drop all ${colors.red(tables.length)} tables?`,\r\n );\r\n\r\n if (!confirmed) {\r\n log.info(\"database\", \"drop\", \"Operation cancelled.\");\r\n return;\r\n }\r\n\r\n const { dropped } = await dropAllTables();\r\n\r\n log.success(\r\n \"database\",\r\n \"drop\",\r\n `Dropped ${colors.yellowBright(dropped)} tables successfully.`,\r\n );\r\n}\r\n"],"mappings":";;;;;;AAMA,eAAsB,iBAAiB,SAA4B;CACjE,MAAM,EAAE,UAAU,QAAQ;CAE1B,IAAI,OAAO;EACT,MAAM,EAAE,YAAY,MAAM,cAAc;EACxC,IAAI,QACF,YACA,QACA,WAAW,OAAO,aAAa,OAAO,EAAE,sBAC1C;EACA;CACF;CAKA,MAAM,SAAS,mBAAmB,IAAI,EAAE;CACxC,MAAM,SAAS,MAAM,OAAO,UAAU,WAAW;CAEjD,IAAI,OAAO,WAAW,GAAG;EACvB,IAAI,KAAK,YAAY,QAAQ,kCAAkC;EAC/D;CACF;CAEA,IAAI,KAAK,YAAY,QAAQ,SAAS,OAAO,aAAa,OAAO,MAAM,EAAE,SAAS;CAElF,KAAK,MAAM,SAAS,QAAQ;EAC1B,MAAM,QAAQ,MAAM,OAAO,aAAa,KAAK,EAAE,MAAM;EACrD,QAAQ,IAAI,OAAO,OAAO,KAAK,KAAK,EAAE,IAAI,OAAO,MAAM,KAAK,EAAE,MAAM;CACtE;CAMA,IAAI,CAAC,MAJmB,QACtB,qCAAqC,OAAO,IAAI,OAAO,MAAM,EAAE,SACjE,GAEgB;EACd,IAAI,KAAK,YAAY,QAAQ,sBAAsB;EACnD;CACF;CAEA,MAAM,EAAE,YAAY,MAAM,cAAc;CAExC,IAAI,QACF,YACA,QACA,WAAW,OAAO,aAAa,OAAO,EAAE,sBAC1C;AACF"}
@@ -1,99 +0,0 @@
1
- import { srcPath } from "../utils/paths.mjs";
2
- import "../utils/index.mjs";
3
- import { Path } from "../dev-server/path.mjs";
4
- import { warlockConfigManager } from "../warlock-config/warlock-config.manager.mjs";
5
- import { getFilesFromDirectory } from "../dev-server/utils.mjs";
6
- import { filesOrchestrator } from "../dev-server/files-orchestrator.mjs";
7
- import { exportMigrationsSQL, freshMigrate, listExecutedMigrations, migrationRunner, rollbackMigrations, runMigrations } from "@warlock.js/cascade";
8
- import path from "path";
9
- import { colors } from "@mongez/copper";
10
- import dayjs from "dayjs";
11
-
12
- //#region ../../@warlock.js/core/src/database/migrate-action.ts
13
- async function listMigrationsAction() {
14
- const createdMigrations = await listExecutedMigrations();
15
- console.log(`\nTotal Executed Migrations: ${colors.green(createdMigrations.length)}\n`);
16
- if (createdMigrations.length === 0) {
17
- console.log(colors.gray(" No migrations have been executed yet.\n"));
18
- return;
19
- }
20
- for (const migration of createdMigrations) {
21
- const executedAt = dayjs(migration.executedAt).format("DD-MM-YYYY hh:mm:ss A");
22
- const createdAt = migration.createdAt ? dayjs(migration.createdAt).format("DD-MM-YYYY hh:mm:ss A") : null;
23
- console.log(` ${colors.green("✔")} ${colors.cyanBright(migration.name)}`);
24
- console.log(` ${colors.gray("Executed:")} ${colors.white(executedAt)}`);
25
- if (createdAt) console.log(` ${colors.gray("Created:")} ${colors.yellow(createdAt)}`);
26
- console.log("");
27
- }
28
- }
29
- async function allMigrationsFilesAction() {
30
- const files = (await migrationFiles()).map((path) => Path.toRelative(path));
31
- console.log(`Total Migration Files: ${colors.green(files.length)}`);
32
- for (const file of files) console.log(colors.yellowBright(file));
33
- }
34
- /**
35
- * If path is provided, then run the migration runner against that file only
36
- * If fresh is provided, then rollback all migrations and run all migrations
37
- * If rollback is provided, then run the migration runner against all files in reverse order
38
- */
39
- async function migrateAction(options) {
40
- const { fresh, path, rollback, all, list, sql, pendingOnly, compact } = options.options;
41
- if (list) return await listMigrationsAction();
42
- if (all) return await allMigrationsFilesAction();
43
- if (path) await loadMigrationFile(Path.toAbsolute(path));
44
- else await loadAllMigrations();
45
- if (fresh && rollback) {
46
- console.log(colors.redBright("You can't use --fresh and --rollback together"));
47
- process.exit(1);
48
- }
49
- if (rollback) {
50
- await rollbackMigrations({ all: true });
51
- return;
52
- }
53
- if (sql) {
54
- await exportMigrationsSQL({
55
- pendingOnly,
56
- compact
57
- });
58
- return;
59
- }
60
- if (fresh) {
61
- await freshMigrate();
62
- return;
63
- }
64
- await runMigrations();
65
- }
66
- async function loadMigrationFile(absPath) {
67
- const relativePath = Path.toRelative(absPath);
68
- const loadedModule = await filesOrchestrator.load(relativePath);
69
- if (!loadedModule?.default) throw new Error(`${Path.toRelative(absPath)} must have a default export`);
70
- const MigrationClass = loadedModule.default;
71
- if (!MigrationClass.migrationName) MigrationClass.migrationName = path.basename(absPath).split(".")[0].replace("-migration", "").replace("_migration", "");
72
- if (!MigrationClass.createdAt) {
73
- const timestampMatch = path.basename(absPath).match(/^(\d{2}-\d{2}-\d{4}_\d{2}-\d{2}-\d{2})/);
74
- if (timestampMatch) MigrationClass.createdAt = timestampMatch[1];
75
- }
76
- migrationRunner.register(MigrationClass);
77
- }
78
- /**
79
- *
80
- * @returns List of absolute paths to migration files
81
- */
82
- async function migrationFiles() {
83
- const migrationFiles = await getFilesFromDirectory(srcPath("app"), "*/models/*/migrations/*");
84
- const separateMigrationsFolderFIles = await getFilesFromDirectory(srcPath("app"), "*/migrations/*");
85
- return [...migrationFiles, ...separateMigrationsFolderFIles];
86
- }
87
- async function loadAllMigrations() {
88
- const configMigrations = warlockConfigManager.get("database")?.migrations || [];
89
- for (const MigrationClass of configMigrations) {
90
- if (!MigrationClass.migrationName) MigrationClass.migrationName = MigrationClass.name;
91
- migrationRunner.register(MigrationClass);
92
- }
93
- const migrations = await migrationFiles();
94
- for (const migrationFile of migrations) await loadMigrationFile(migrationFile);
95
- }
96
-
97
- //#endregion
98
- export { migrateAction };
99
- //# sourceMappingURL=migrate-action.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"migrate-action.mjs","names":[],"sources":["../../../../../../@warlock.js/core/src/database/migrate-action.ts"],"sourcesContent":["import { colors } from \"@mongez/copper\";\r\nimport {\r\n exportMigrationsSQL,\r\n freshMigrate,\r\n listExecutedMigrations,\r\n Migration,\r\n migrationRunner,\r\n rollbackMigrations,\r\n runMigrations,\r\n} from \"@warlock.js/cascade\";\r\nimport dayjs from \"dayjs\";\r\nimport path from \"path\";\r\nimport { CommandActionData } from \"../cli/types\";\r\nimport { filesOrchestrator } from \"../dev-server/files-orchestrator\";\r\nimport { Path } from \"../dev-server/path\";\r\nimport { getFilesFromDirectory } from \"../dev-server/utils\";\r\nimport { srcPath } from \"../utils\";\r\nimport { warlockConfigManager } from \"../warlock-config/warlock-config.manager\";\r\n\r\nasync function listMigrationsAction() {\r\n const createdMigrations = await listExecutedMigrations();\r\n\r\n console.log(`\\nTotal Executed Migrations: ${colors.green(createdMigrations.length)}\\n`);\r\n\r\n if (createdMigrations.length === 0) {\r\n console.log(colors.gray(\" No migrations have been executed yet.\\n\"));\r\n return;\r\n }\r\n\r\n // Display each migration as a block\r\n for (const migration of createdMigrations) {\r\n const executedAt = dayjs(migration.executedAt).format(\"DD-MM-YYYY hh:mm:ss A\");\r\n const createdAt = migration.createdAt\r\n ? dayjs(migration.createdAt).format(\"DD-MM-YYYY hh:mm:ss A\")\r\n : null;\r\n\r\n // Migration name with checkmark icon\r\n console.log(` ${colors.green(\"✔\")} ${colors.cyanBright(migration.name)}`);\r\n\r\n // Executed date\r\n console.log(` ${colors.gray(\"Executed:\")} ${colors.white(executedAt)}`);\r\n\r\n // Created date (if available)\r\n if (createdAt) {\r\n console.log(` ${colors.gray(\"Created:\")} ${colors.yellow(createdAt)}`);\r\n }\r\n\r\n console.log(\"\"); // Empty line between migrations\r\n }\r\n}\r\n\r\nasync function allMigrationsFilesAction() {\r\n // get all available migration files in the project\r\n const files = (await migrationFiles()).map((path) => Path.toRelative(path));\r\n console.log(`Total Migration Files: ${colors.green(files.length)}`);\r\n\r\n for (const file of files) {\r\n console.log(colors.yellowBright(file));\r\n }\r\n}\r\n\r\n/**\r\n * If path is provided, then run the migration runner against that file only\r\n * If fresh is provided, then rollback all migrations and run all migrations\r\n * If rollback is provided, then run the migration runner against all files in reverse order\r\n */\r\nexport async function migrateAction(options: CommandActionData) {\r\n const { fresh, path, rollback, all, list, sql, pendingOnly, compact } = options.options;\r\n\r\n if (list) {\r\n return await listMigrationsAction();\r\n }\r\n\r\n if (all) {\r\n return await allMigrationsFilesAction();\r\n }\r\n\r\n if (path) {\r\n await loadMigrationFile(Path.toAbsolute(path as string));\r\n } else {\r\n await loadAllMigrations();\r\n }\r\n\r\n if (fresh && rollback) {\r\n console.log(colors.redBright(\"You can't use --fresh and --rollback together\"));\r\n process.exit(1);\r\n }\r\n\r\n if (rollback) {\r\n await rollbackMigrations({ all: true });\r\n return;\r\n }\r\n\r\n if (sql) {\r\n await exportMigrationsSQL({\r\n pendingOnly: pendingOnly as boolean,\r\n compact: compact as boolean,\r\n });\r\n return;\r\n }\r\n\r\n if (fresh) {\r\n await freshMigrate();\r\n return;\r\n }\r\n\r\n await runMigrations();\r\n}\r\n\r\nasync function loadMigrationFile(absPath: string) {\r\n const relativePath = Path.toRelative(absPath);\r\n\r\n const loadedModule = await filesOrchestrator.load<{ default: typeof Migration }>(relativePath);\r\n\r\n if (!loadedModule?.default) {\r\n throw new Error(`${Path.toRelative(absPath)} must have a default export`);\r\n }\r\n\r\n const MigrationClass = loadedModule.default;\r\n\r\n if (!MigrationClass.migrationName) {\r\n MigrationClass.migrationName = path\r\n .basename(absPath)\r\n .split(\".\")[0]\r\n .replace(\"-migration\", \"\")\r\n .replace(\"_migration\", \"\");\r\n }\r\n\r\n // Extract createdAt timestamp from filename if not already set\r\n // Expected format: MM-DD-YYYY_HH-MM-SS-name.migration.ts\r\n if (!MigrationClass.createdAt) {\r\n const filename = path.basename(absPath);\r\n const timestampMatch = filename.match(/^(\\d{2}-\\d{2}-\\d{4}_\\d{2}-\\d{2}-\\d{2})/);\r\n if (timestampMatch) {\r\n MigrationClass.createdAt = timestampMatch[1];\r\n }\r\n }\r\n\r\n migrationRunner.register(MigrationClass);\r\n}\r\n\r\n/**\r\n *\r\n * @returns List of absolute paths to migration files\r\n */\r\nasync function migrationFiles() {\r\n const migrationFiles = await getFilesFromDirectory(srcPath(\"app\"), \"*/models/*/migrations/*\");\r\n const separateMigrationsFolderFIles = await getFilesFromDirectory(\r\n srcPath(\"app\"),\r\n \"*/migrations/*\",\r\n );\r\n\r\n const migrations = [...migrationFiles, ...separateMigrationsFolderFIles];\r\n\r\n return migrations;\r\n}\r\n\r\nasync function loadAllMigrations() {\r\n // Load config-registered migrations (from packages like @warlock.js/auth)\r\n const configMigrations = warlockConfigManager.get(\"database\")?.migrations || [];\r\n\r\n for (const MigrationClass of configMigrations) {\r\n // Use class name as migration name if not set\r\n if (!MigrationClass.migrationName) {\r\n MigrationClass.migrationName = MigrationClass.name;\r\n }\r\n migrationRunner.register(MigrationClass);\r\n }\r\n\r\n // Always load file-based migrations from src/app, regardless of config\r\n const migrations = await migrationFiles();\r\n for (const migrationFile of migrations) {\r\n await loadMigrationFile(migrationFile);\r\n }\r\n}\r\n"],"mappings":"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"}
@@ -1,74 +0,0 @@
1
- import { srcPath } from "../utils/paths.mjs";
2
- import "../utils/index.mjs";
3
- import { Path } from "../dev-server/path.mjs";
4
- import { getFilesFromDirectory } from "../dev-server/utils.mjs";
5
- import { filesOrchestrator } from "../dev-server/files-orchestrator.mjs";
6
- import { SeedersManager } from "./seeds/seeders.manager.mjs";
7
- import { dataSourceRegistry } from "@warlock.js/cascade";
8
- import { colors } from "@mongez/copper";
9
-
10
- //#region ../../@warlock.js/core/src/database/seed-command-action.ts
11
- async function clearAllTables(datasource) {
12
- const tables = await datasource.driver.blueprint.listTables();
13
- for (const table of tables) await datasource.driver.truncateTable(table, { cascade: true });
14
- }
15
- /**
16
- * Run database seeds.
17
- *
18
- * @example
19
- * ```ts
20
- * import { seedCommandAction } from "@warlock.js/core";
21
- *
22
- * await seedCommandAction({
23
- * command: "seed",
24
- * options: { fresh: true, list: false }
25
- * });
26
- * ```
27
- */
28
- async function seedCommandAction(options) {
29
- const { path, fresh, transaction, list } = options.options;
30
- const datasource = dataSourceRegistry.get();
31
- if (fresh) await clearAllTables(datasource);
32
- if (list) {
33
- const seedFiles = await listSeedsFiles();
34
- if (seedFiles.length === 0) {
35
- console.log("No seeds found.");
36
- return;
37
- }
38
- const seedersManager = new SeedersManager();
39
- seedersManager.register(...seedFiles);
40
- const seeds = seedersManager.sort().seeders.map((seed) => {
41
- return {
42
- name: seed.name,
43
- order: seed.order,
44
- enabled: seed.enabled
45
- };
46
- });
47
- console.table(seeds);
48
- console.log(`Total Seeds: ${colors.blueBright(seeds.length)}, enabled: ${colors.greenBright(seeds.filter((seed) => seed.enabled !== false).length)}, disabled: ${colors.redBright(seeds.filter((seed) => seed.enabled === false).length)}`);
49
- return;
50
- }
51
- const seeds = path ? [await loadSeedFile(Path.toAbsolute(path))] : await listSeedsFiles();
52
- const seedersManager = new SeedersManager();
53
- seedersManager.register(...seeds);
54
- await seedersManager.run(transaction);
55
- }
56
- async function listSeedsFiles() {
57
- const seedsFiles = await getFilesFromDirectory(srcPath("app"), "*/seeds/*.ts");
58
- const seeds = [];
59
- for (const seedFile of seedsFiles) {
60
- const seed = await loadSeedFile(seedFile);
61
- seeds.push(seed);
62
- }
63
- return seeds;
64
- }
65
- async function loadSeedFile(absPath) {
66
- const relativePath = Path.toRelative(absPath);
67
- const seedImport = await filesOrchestrator.load(relativePath);
68
- if (!seedImport || !seedImport.default) throw new Error(`Seeder file ${relativePath} does not export a default seeder.`);
69
- return seedImport.default;
70
- }
71
-
72
- //#endregion
73
- export { seedCommandAction };
74
- //# sourceMappingURL=seed-command-action.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"seed-command-action.mjs","names":[],"sources":["../../../../../../@warlock.js/core/src/database/seed-command-action.ts"],"sourcesContent":["import { colors } from \"@mongez/copper\";\r\nimport { DataSource, dataSourceRegistry } from \"@warlock.js/cascade\";\r\nimport { CommandActionData } from \"../cli/types\";\r\nimport { filesOrchestrator } from \"../dev-server/files-orchestrator\";\r\nimport { Path } from \"../dev-server/path\";\r\nimport { getFilesFromDirectory } from \"../dev-server/utils\";\r\nimport { srcPath } from \"../utils\";\r\nimport { Seeder } from \"./seeds/seeder\";\r\nimport { SeedersManager } from \"./seeds/seeders.manager\";\r\n\r\nasync function clearAllTables(datasource: DataSource) {\r\n const tables = await datasource.driver.blueprint.listTables();\r\n\r\n for (const table of tables) {\r\n await datasource.driver.truncateTable(table, { cascade: true });\r\n }\r\n}\r\n\r\n/**\r\n * Run database seeds.\r\n *\r\n * @example\r\n * ```ts\r\n * import { seedCommandAction } from \"@warlock.js/core\";\r\n *\r\n * await seedCommandAction({\r\n * command: \"seed\",\r\n * options: { fresh: true, list: false }\r\n * });\r\n * ```\r\n */\r\nexport async function seedCommandAction(options: CommandActionData) {\r\n const { path, fresh, transaction, list } = options.options;\r\n\r\n const datasource = dataSourceRegistry.get();\r\n\r\n if (fresh) {\r\n await clearAllTables(datasource);\r\n }\r\n\r\n if (list) {\r\n const seedFiles = await listSeedsFiles();\r\n\r\n if (seedFiles.length === 0) {\r\n console.log(\"No seeds found.\");\r\n return;\r\n }\r\n\r\n const seedersManager = new SeedersManager();\r\n\r\n seedersManager.register(...seedFiles);\r\n\r\n const seeds = seedersManager.sort().seeders.map((seed) => {\r\n return {\r\n name: seed.name,\r\n order: seed.order,\r\n enabled: seed.enabled,\r\n };\r\n });\r\n\r\n console.table(seeds);\r\n\r\n console.log(\r\n `Total Seeds: ${colors.blueBright(seeds.length)}, enabled: ${colors.greenBright(seeds.filter((seed) => seed.enabled !== false).length)}, disabled: ${colors.redBright(seeds.filter((seed) => seed.enabled === false).length)}`,\r\n );\r\n return;\r\n }\r\n\r\n const seeds = path\r\n ? [await loadSeedFile(Path.toAbsolute(path as string))]\r\n : await listSeedsFiles();\r\n\r\n const seedersManager = new SeedersManager();\r\n\r\n seedersManager.register(...seeds);\r\n\r\n await seedersManager.run(transaction as boolean);\r\n}\r\n\r\nasync function listSeedsFiles() {\r\n const seedsFiles = await getFilesFromDirectory(srcPath(\"app\"), \"*/seeds/*.ts\");\r\n\r\n const seeds = [];\r\n\r\n for (const seedFile of seedsFiles) {\r\n const seed = await loadSeedFile(seedFile);\r\n seeds.push(seed);\r\n }\r\n\r\n return seeds;\r\n}\r\n\r\nasync function loadSeedFile(absPath: string): Promise<Seeder> {\r\n const relativePath = Path.toRelative(absPath);\r\n const seedImport = await filesOrchestrator.load<{ default: Seeder }>(relativePath);\r\n\r\n if (!seedImport || !seedImport.default) {\r\n throw new Error(`Seeder file ${relativePath} does not export a default seeder.`);\r\n }\r\n\r\n return seedImport.default;\r\n}\r\n"],"mappings":";;;;;;;;;;AAUA,eAAe,eAAe,YAAwB;CACpD,MAAM,SAAS,MAAM,WAAW,OAAO,UAAU,WAAW;CAE5D,KAAK,MAAM,SAAS,QAClB,MAAM,WAAW,OAAO,cAAc,OAAO,EAAE,SAAS,KAAK,CAAC;AAElE;;;;;;;;;;;;;;AAeA,eAAsB,kBAAkB,SAA4B;CAClE,MAAM,EAAE,MAAM,OAAO,aAAa,SAAS,QAAQ;CAEnD,MAAM,aAAa,mBAAmB,IAAI;CAE1C,IAAI,OACF,MAAM,eAAe,UAAU;CAGjC,IAAI,MAAM;EACR,MAAM,YAAY,MAAM,eAAe;EAEvC,IAAI,UAAU,WAAW,GAAG;GAC1B,QAAQ,IAAI,iBAAiB;GAC7B;EACF;EAEA,MAAM,iBAAiB,IAAI,eAAe;EAE1C,eAAe,SAAS,GAAG,SAAS;EAEpC,MAAM,QAAQ,eAAe,KAAK,EAAE,QAAQ,KAAK,SAAS;GACxD,OAAO;IACL,MAAM,KAAK;IACX,OAAO,KAAK;IACZ,SAAS,KAAK;GAChB;EACF,CAAC;EAED,QAAQ,MAAM,KAAK;EAEnB,QAAQ,IACN,gBAAgB,OAAO,WAAW,MAAM,MAAM,EAAE,aAAa,OAAO,YAAY,MAAM,QAAQ,SAAS,KAAK,YAAY,KAAK,EAAE,MAAM,EAAE,cAAc,OAAO,UAAU,MAAM,QAAQ,SAAS,KAAK,YAAY,KAAK,EAAE,MAAM,GAC7N;EACA;CACF;CAEA,MAAM,QAAQ,OACV,CAAC,MAAM,aAAa,KAAK,WAAW,IAAc,CAAC,CAAC,IACpD,MAAM,eAAe;CAEzB,MAAM,iBAAiB,IAAI,eAAe;CAE1C,eAAe,SAAS,GAAG,KAAK;CAEhC,MAAM,eAAe,IAAI,WAAsB;AACjD;AAEA,eAAe,iBAAiB;CAC9B,MAAM,aAAa,MAAM,sBAAsB,QAAQ,KAAK,GAAG,cAAc;CAE7E,MAAM,QAAQ,CAAC;CAEf,KAAK,MAAM,YAAY,YAAY;EACjC,MAAM,OAAO,MAAM,aAAa,QAAQ;EACxC,MAAM,KAAK,IAAI;CACjB;CAEA,OAAO;AACT;AAEA,eAAe,aAAa,SAAkC;CAC5D,MAAM,eAAe,KAAK,WAAW,OAAO;CAC5C,MAAM,aAAa,MAAM,kBAAkB,KAA0B,YAAY;CAEjF,IAAI,CAAC,cAAc,CAAC,WAAW,SAC7B,MAAM,IAAI,MAAM,eAAe,aAAa,mCAAmC;CAGjF,OAAO,WAAW;AACpB"}
@@ -1,129 +0,0 @@
1
- import { seedsTableName } from "./utils.mjs";
2
- import { SeedsTableMigration } from "./seeds-table-migration.mjs";
3
- import { DatabaseWriterValidationError, dataSourceRegistry, migrationRunner, transaction } from "@warlock.js/cascade";
4
- import { colors } from "@mongez/copper";
5
-
6
- //#region ../../@warlock.js/core/src/database/seeds/seeders.manager.ts
7
- var SeedersManager = class {
8
- constructor(options) {
9
- this.options = options;
10
- this.seeders = [];
11
- this.datasource = options?.datasource ?? dataSourceRegistry.get();
12
- }
13
- /**
14
- * Register new seeder
15
- */
16
- register(...seeders) {
17
- this.seeders.push(...seeders);
18
- return this;
19
- }
20
- /**
21
- * Initialize before running
22
- */
23
- async init() {
24
- if (!await this.driver.blueprint.tableExists("_seeds")) await migrationRunner.run(SeedsTableMigration);
25
- }
26
- /**
27
- * Run seeders
28
- */
29
- async run(withTransaction = true) {
30
- await this.init();
31
- this.prepareSeeders();
32
- console.log(`🌱 Running ${this.seeders.length} seeder(s)...\n`);
33
- let successCount = 0;
34
- let skippedCount = 0;
35
- let failedCount = 0;
36
- for (const seeder of this.seeders) {
37
- if (seeder.once && await this.seederIsExecutedBefore(seeder)) {
38
- console.log(`⏭️ Skipping ${colors.yellow(seeder.name)} (already executed)`);
39
- skippedCount++;
40
- continue;
41
- }
42
- try {
43
- console.log(`🔄 Running ${colors.green(seeder.name)}...`);
44
- const startTime = Date.now();
45
- const result = withTransaction ? await transaction(async () => seeder.run()) : await seeder.run();
46
- const duration = Date.now() - startTime;
47
- if (result) await this.storeSeedsResults(seeder, result);
48
- console.log(`✅ ${colors.green(seeder.name)} completed (${duration}ms, ${result?.recordsCreated ?? 0} records)\n`);
49
- successCount++;
50
- } catch (error) {
51
- const err = error;
52
- console.error(`❌ ${colors.red(seeder.name)} failed:`, err.message);
53
- console.log(err);
54
- failedCount++;
55
- if (error instanceof DatabaseWriterValidationError) console.log(error.errors);
56
- throw error;
57
- }
58
- }
59
- console.log("\n" + "=".repeat(50));
60
- console.log(`✅ Success: ${successCount}`);
61
- if (skippedCount > 0) console.log(`⏭️ Skipped: ${skippedCount}`);
62
- if (failedCount > 0) console.log(`❌ Failed: ${failedCount}`);
63
- console.log("=".repeat(50));
64
- }
65
- /**
66
- * Sort seeds
67
- */
68
- sort() {
69
- this.seeders = this.seeders.sort((a, b) => {
70
- return (a.order ?? Number.MAX_SAFE_INTEGER) - (b.order ?? Number.MAX_SAFE_INTEGER);
71
- });
72
- return this;
73
- }
74
- /**
75
- * Prepare seeders to order by the seeder order
76
- * Also keep an eye on the dependsOn for each seeder to make sure
77
- * they are ordered correctly
78
- */
79
- prepareSeeders() {
80
- this.seeders = this.seeders.filter((seeder) => seeder.enabled !== false);
81
- this.sort();
82
- }
83
- /**
84
- * Store seed results in db
85
- */
86
- async storeSeedsResults(seeder, result) {
87
- const oldResult = await this.getMetadata(seeder);
88
- console.log(`📊 Total records created: ${result.recordsCreated}`);
89
- if (oldResult) {
90
- await this.driver.queryBuilder(seedsTableName).where("name", seeder.name).update({
91
- runCount: oldResult.runCount + 1,
92
- lastRunAt: /* @__PURE__ */ new Date(),
93
- totalRecordsCreated: oldResult.totalRecordsCreated + result.recordsCreated,
94
- lastRunRecordsCreated: result.recordsCreated
95
- });
96
- console.log(`📊 Total records created so far: ${oldResult.totalRecordsCreated + result.recordsCreated}`);
97
- } else await this.driver.insert(seedsTableName, {
98
- name: seeder.name,
99
- createdAt: /* @__PURE__ */ new Date(),
100
- firstRunAt: /* @__PURE__ */ new Date(),
101
- lastRunAt: /* @__PURE__ */ new Date(),
102
- runCount: 1,
103
- totalRecordsCreated: result.recordsCreated,
104
- lastRunRecordsCreated: result.recordsCreated
105
- });
106
- }
107
- /**
108
- * Get seed info from database
109
- */
110
- getMetadata(seeder) {
111
- return this.datasource.driver.queryBuilder(seedsTableName).where("name", seeder.name).first();
112
- }
113
- /**
114
- * Get driver instance
115
- */
116
- get driver() {
117
- return this.datasource.driver;
118
- }
119
- /**
120
- * Check if seeder has been executed before
121
- */
122
- async seederIsExecutedBefore(seeder) {
123
- return !!await this.getMetadata(seeder);
124
- }
125
- };
126
-
127
- //#endregion
128
- export { SeedersManager };
129
- //# sourceMappingURL=seeders.manager.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"seeders.manager.mjs","names":[],"sources":["../../../../../../../@warlock.js/core/src/database/seeds/seeders.manager.ts"],"sourcesContent":["import { colors } from \"@mongez/copper\";\nimport {\n type DataSource,\n type DriverContract,\n DatabaseWriterValidationError,\n dataSourceRegistry,\n migrationRunner,\n transaction,\n} from \"@warlock.js/cascade\";\nimport { Seeder } from \"./seeder\";\nimport { SeedsTableMigration } from \"./seeds-table-migration\";\nimport { SeederMetadata, SeedResult } from \"./types\";\nimport { seedsTableName } from \"./utils\";\n\nexport type SeedersManagerOptions = {\n datasource?: DataSource;\n};\n\nexport class SeedersManager {\n public seeders: Seeder[] = [];\n\n protected datasource?: DataSource;\n\n public constructor(protected options?: SeedersManagerOptions) {\n this.datasource = options?.datasource ?? dataSourceRegistry.get();\n }\n\n /**\n * Register new seeder\n */\n public register(...seeders: Seeder[]) {\n this.seeders.push(...seeders);\n return this;\n }\n\n /**\n * Initialize before running\n */\n protected async init() {\n if (!(await this.driver.blueprint.tableExists(seedsTableName))) {\n await migrationRunner.run(SeedsTableMigration);\n }\n }\n\n /**\n * Run seeders\n */\n public async run(withTransaction = true) {\n await this.init();\n\n this.prepareSeeders();\n\n console.log(`🌱 Running ${this.seeders.length} seeder(s)...\\n`);\n\n let successCount = 0;\n let skippedCount = 0;\n let failedCount = 0;\n\n for (const seeder of this.seeders) {\n // Check if already executed\n if (seeder.once && (await this.seederIsExecutedBefore(seeder))) {\n console.log(`⏭️ Skipping ${colors.yellow(seeder.name)} (already executed)`);\n skippedCount++;\n continue;\n }\n\n try {\n console.log(`🔄 Running ${colors.green(seeder.name)}...`);\n const startTime = Date.now();\n\n const result = withTransaction\n ? await transaction(async () => seeder.run())\n : await seeder.run();\n\n const duration = Date.now() - startTime;\n if (result) {\n await this.storeSeedsResults(seeder, result);\n }\n\n console.log(\n `✅ ${colors.green(seeder.name)} completed (${duration}ms, ${result?.recordsCreated ?? 0} records)\\n`,\n );\n successCount++;\n } catch (error: any) {\n const err = error as Error;\n console.error(`❌ ${colors.red(seeder.name)} failed:`, err.message);\n console.log(err);\n failedCount++;\n\n if (error instanceof DatabaseWriterValidationError) {\n console.log(error.errors);\n }\n\n // Re-throw to stop execution (or continue to next seed based on your preference)\n throw error;\n }\n }\n\n // Summary\n console.log(\"\\n\" + \"=\".repeat(50));\n console.log(`✅ Success: ${successCount}`);\n\n if (skippedCount > 0) console.log(`⏭️ Skipped: ${skippedCount}`);\n\n if (failedCount > 0) console.log(`❌ Failed: ${failedCount}`);\n\n console.log(\"=\".repeat(50));\n }\n\n /**\n * Sort seeds\n */\n public sort() {\n this.seeders = this.seeders.sort((a, b) => {\n const orderA = a.order ?? Number.MAX_SAFE_INTEGER;\n const orderB = b.order ?? Number.MAX_SAFE_INTEGER;\n return orderA - orderB;\n });\n\n return this;\n }\n\n /**\n * Prepare seeders to order by the seeder order\n * Also keep an eye on the dependsOn for each seeder to make sure\n * they are ordered correctly\n */\n public prepareSeeders() {\n this.seeders = this.seeders.filter((seeder) => seeder.enabled !== false);\n\n this.sort();\n\n // TODO: Handle dependsOn resolution\n // This is more complex - needs topological sort\n }\n\n /**\n * Store seed results in db\n */\n public async storeSeedsResults(seeder: Seeder, result: SeedResult) {\n const oldResult = await this.getMetadata(seeder);\n\n // log with an emoji icon at beginning of text no of total craeted records\n console.log(`📊 Total records created: ${result.recordsCreated}`);\n\n if (oldResult) {\n // Update existing record - use query builder with WHERE clause\n await this.driver\n .queryBuilder(seedsTableName)\n .where(\"name\", seeder.name)\n .update({\n runCount: oldResult.runCount + 1,\n lastRunAt: new Date(),\n totalRecordsCreated: oldResult.totalRecordsCreated + result.recordsCreated,\n lastRunRecordsCreated: result.recordsCreated,\n });\n\n // now display total created records so far\n console.log(\n `📊 Total records created so far: ${oldResult.totalRecordsCreated + result.recordsCreated}`,\n );\n } else {\n // Insert new record\n await this.driver.insert(seedsTableName, {\n name: seeder.name,\n createdAt: new Date(),\n firstRunAt: new Date(),\n lastRunAt: new Date(),\n runCount: 1,\n totalRecordsCreated: result.recordsCreated,\n lastRunRecordsCreated: result.recordsCreated,\n });\n }\n }\n\n /**\n * Get seed info from database\n */\n protected getMetadata(seeder: Seeder): Promise<SeederMetadata> {\n const driver = this.datasource.driver;\n\n return driver.queryBuilder(seedsTableName).where(\"name\", seeder.name).first();\n }\n\n /**\n * Get driver instance\n */\n protected get driver(): DriverContract {\n return this.datasource.driver;\n }\n\n /**\n * Check if seeder has been executed before\n */\n protected async seederIsExecutedBefore(seeder: Seeder) {\n return !!(await this.getMetadata(seeder));\n }\n}\n"],"mappings":"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"}
@@ -1,31 +0,0 @@
1
- import { seedsTableName } from "./utils.mjs";
2
- import { Migration } from "@warlock.js/cascade";
3
-
4
- //#region ../../@warlock.js/core/src/database/seeds/seeds-table-migration.ts
5
- var SeedsTableMigration = class extends Migration {
6
- constructor(..._args) {
7
- super(..._args);
8
- this.table = seedsTableName;
9
- }
10
- static {
11
- this.migrationName = "seeds-table-migration";
12
- }
13
- up() {
14
- this.createTableIfNotExists();
15
- this.id();
16
- this.text("name").unique();
17
- this.int("runCount").default(0);
18
- this.dateTime("createdAt").useCurrent();
19
- this.dateTime("firstRunAt").useCurrent();
20
- this.dateTime("lastRunAt").useCurrent();
21
- this.int("totalRecordsCreated").default(0);
22
- this.int("lastRunRecordsCreated").default(0);
23
- }
24
- down() {
25
- this.dropTableIfExists(seedsTableName);
26
- }
27
- };
28
-
29
- //#endregion
30
- export { SeedsTableMigration };
31
- //# sourceMappingURL=seeds-table-migration.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"seeds-table-migration.mjs","names":[],"sources":["../../../../../../../@warlock.js/core/src/database/seeds/seeds-table-migration.ts"],"sourcesContent":["import { Migration } from \"@warlock.js/cascade\";\nimport { seedsTableName } from \"./utils\";\n\nexport class SeedsTableMigration extends Migration {\n public static migrationName = \"seeds-table-migration\";\n public table = seedsTableName;\n\n public up() {\n this.createTableIfNotExists();\n\n this.id();\n this.text(\"name\").unique();\n this.int(\"runCount\").default(0);\n this.dateTime(\"createdAt\").useCurrent();\n this.dateTime(\"firstRunAt\").useCurrent();\n this.dateTime(\"lastRunAt\").useCurrent();\n this.int(\"totalRecordsCreated\").default(0);\n this.int(\"lastRunRecordsCreated\").default(0);\n }\n\n public down() {\n this.dropTableIfExists(seedsTableName);\n }\n}\n"],"mappings":";;;;AAGA,IAAa,sBAAb,cAAyC,UAAU;;;eAElC;;;uBADe;;CAG9B,AAAO,KAAK;EACV,KAAK,uBAAuB;EAE5B,KAAK,GAAG;EACR,KAAK,KAAK,MAAM,EAAE,OAAO;EACzB,KAAK,IAAI,UAAU,EAAE,QAAQ,CAAC;EAC9B,KAAK,SAAS,WAAW,EAAE,WAAW;EACtC,KAAK,SAAS,YAAY,EAAE,WAAW;EACvC,KAAK,SAAS,WAAW,EAAE,WAAW;EACtC,KAAK,IAAI,qBAAqB,EAAE,QAAQ,CAAC;EACzC,KAAK,IAAI,uBAAuB,EAAE,QAAQ,CAAC;CAC7C;CAEA,AAAO,OAAO;EACZ,KAAK,kBAAkB,cAAc;CACvC;AACF"}
@@ -1,6 +0,0 @@
1
- //#region ../../@warlock.js/core/src/database/seeds/utils.ts
2
- const seedsTableName = "_seeds";
3
-
4
- //#endregion
5
- export { seedsTableName };
6
- //# sourceMappingURL=utils.mjs.map