@mantajs/core 0.1.7 → 0.2.0-beta.0

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 (566) hide show
  1. package/dist/adapters/auth-mock.d.ts +44 -0
  2. package/dist/adapters/auth-mock.d.ts.map +1 -0
  3. package/dist/adapters/auth-mock.js +160 -0
  4. package/dist/adapters/auth-mock.js.map +1 -0
  5. package/dist/adapters/cache-memory.d.ts +11 -0
  6. package/dist/adapters/cache-memory.d.ts.map +1 -0
  7. package/dist/adapters/cache-memory.js +32 -0
  8. package/dist/adapters/cache-memory.js.map +1 -0
  9. package/dist/adapters/database-memory.d.ts +24 -0
  10. package/dist/adapters/database-memory.d.ts.map +1 -0
  11. package/dist/adapters/database-memory.js +141 -0
  12. package/dist/adapters/database-memory.js.map +1 -0
  13. package/dist/adapters/eventbus-memory.d.ts +37 -0
  14. package/dist/adapters/eventbus-memory.d.ts.map +1 -0
  15. package/dist/adapters/eventbus-memory.js +166 -0
  16. package/dist/adapters/eventbus-memory.js.map +1 -0
  17. package/dist/adapters/file-memory.d.ts +24 -0
  18. package/dist/adapters/file-memory.d.ts.map +1 -0
  19. package/dist/adapters/file-memory.js +77 -0
  20. package/dist/adapters/file-memory.js.map +1 -0
  21. package/dist/adapters/http-memory.d.ts +23 -0
  22. package/dist/adapters/http-memory.d.ts.map +1 -0
  23. package/dist/adapters/http-memory.js +149 -0
  24. package/dist/adapters/http-memory.js.map +1 -0
  25. package/dist/adapters/index.d.ts +14 -0
  26. package/dist/adapters/index.d.ts.map +1 -0
  27. package/dist/adapters/index.js +15 -0
  28. package/dist/adapters/index.js.map +1 -0
  29. package/dist/adapters/job-scheduler-memory.d.ts +20 -0
  30. package/dist/adapters/job-scheduler-memory.d.ts.map +1 -0
  31. package/dist/adapters/job-scheduler-memory.js +103 -0
  32. package/dist/adapters/job-scheduler-memory.js.map +1 -0
  33. package/dist/adapters/locking-memory.d.ts +20 -0
  34. package/dist/adapters/locking-memory.d.ts.map +1 -0
  35. package/dist/adapters/locking-memory.js +85 -0
  36. package/dist/adapters/locking-memory.js.map +1 -0
  37. package/dist/adapters/logger-test.d.ts +30 -0
  38. package/dist/adapters/logger-test.d.ts.map +1 -0
  39. package/dist/adapters/logger-test.js +77 -0
  40. package/dist/adapters/logger-test.js.map +1 -0
  41. package/dist/adapters/notification-memory.d.ts +27 -0
  42. package/dist/adapters/notification-memory.d.ts.map +1 -0
  43. package/dist/adapters/notification-memory.js +69 -0
  44. package/dist/adapters/notification-memory.js.map +1 -0
  45. package/dist/adapters/relational-query-memory.d.ts +47 -0
  46. package/dist/adapters/relational-query-memory.d.ts.map +1 -0
  47. package/dist/adapters/relational-query-memory.js +263 -0
  48. package/dist/adapters/relational-query-memory.js.map +1 -0
  49. package/dist/adapters/repository-factory-memory.d.ts +17 -0
  50. package/dist/adapters/repository-factory-memory.d.ts.map +1 -0
  51. package/dist/adapters/repository-factory-memory.js +32 -0
  52. package/dist/adapters/repository-factory-memory.js.map +1 -0
  53. package/dist/adapters/repository-memory.d.ts +30 -0
  54. package/dist/adapters/repository-memory.d.ts.map +1 -0
  55. package/dist/adapters/repository-memory.js +183 -0
  56. package/dist/adapters/repository-memory.js.map +1 -0
  57. package/dist/ai/index.d.ts +53 -0
  58. package/dist/ai/index.d.ts.map +1 -0
  59. package/dist/ai/index.js +48 -0
  60. package/dist/ai/index.js.map +1 -0
  61. package/dist/app/index.d.ts +97 -0
  62. package/dist/app/index.d.ts.map +1 -0
  63. package/dist/app/index.js +217 -0
  64. package/dist/app/index.js.map +1 -0
  65. package/dist/app/request-context.d.ts +35 -0
  66. package/dist/app/request-context.d.ts.map +1 -0
  67. package/dist/app/request-context.js +32 -0
  68. package/dist/app/request-context.js.map +1 -0
  69. package/dist/auth/auth-module-service.d.ts +62 -0
  70. package/dist/auth/auth-module-service.d.ts.map +1 -0
  71. package/dist/auth/auth-module-service.js +210 -0
  72. package/dist/auth/auth-module-service.js.map +1 -0
  73. package/dist/auth/index.d.ts +7 -0
  74. package/dist/auth/index.d.ts.map +1 -0
  75. package/dist/auth/index.js +5 -0
  76. package/dist/auth/index.js.map +1 -0
  77. package/dist/auth/middleware.d.ts +19 -0
  78. package/dist/auth/middleware.d.ts.map +1 -0
  79. package/dist/auth/middleware.js +61 -0
  80. package/dist/auth/middleware.js.map +1 -0
  81. package/dist/auth/models/auth-identity.d.ts +11 -0
  82. package/dist/auth/models/auth-identity.d.ts.map +1 -0
  83. package/dist/auth/models/auth-identity.js +12 -0
  84. package/dist/auth/models/auth-identity.js.map +1 -0
  85. package/dist/auth/providers/emailpass.d.ts +7 -0
  86. package/dist/auth/providers/emailpass.d.ts.map +1 -0
  87. package/dist/auth/providers/emailpass.js +94 -0
  88. package/dist/auth/providers/emailpass.js.map +1 -0
  89. package/dist/auth/providers/types.d.ts +66 -0
  90. package/dist/auth/providers/types.d.ts.map +1 -0
  91. package/dist/auth/providers/types.js +3 -0
  92. package/dist/auth/providers/types.js.map +1 -0
  93. package/dist/auth/types.d.ts +36 -0
  94. package/dist/auth/types.d.ts.map +1 -0
  95. package/dist/auth/types.js +3 -0
  96. package/dist/auth/types.js.map +1 -0
  97. package/dist/command/define-command-graph.d.ts +63 -0
  98. package/dist/command/define-command-graph.d.ts.map +1 -0
  99. package/dist/command/define-command-graph.js +80 -0
  100. package/dist/command/define-command-graph.js.map +1 -0
  101. package/dist/command/dml-to-zod.d.ts +34 -0
  102. package/dist/command/dml-to-zod.d.ts.map +1 -0
  103. package/dist/command/dml-to-zod.js +140 -0
  104. package/dist/command/dml-to-zod.js.map +1 -0
  105. package/dist/command/generate-entity-commands.d.ts +68 -0
  106. package/dist/command/generate-entity-commands.d.ts.map +1 -0
  107. package/dist/command/generate-entity-commands.js +350 -0
  108. package/dist/command/generate-entity-commands.js.map +1 -0
  109. package/dist/command/index.d.ts +54 -0
  110. package/dist/command/index.d.ts.map +1 -0
  111. package/dist/command/index.js +338 -0
  112. package/dist/command/index.js.map +1 -0
  113. package/dist/command/types.d.ts +131 -0
  114. package/dist/command/types.d.ts.map +1 -0
  115. package/dist/command/types.js +2 -0
  116. package/dist/command/types.js.map +1 -0
  117. package/dist/config/built-in-presets.d.ts +20 -0
  118. package/dist/config/built-in-presets.d.ts.map +1 -0
  119. package/dist/config/built-in-presets.js +70 -0
  120. package/dist/config/built-in-presets.js.map +1 -0
  121. package/dist/config/config-manager.d.ts +117 -0
  122. package/dist/config/config-manager.d.ts.map +1 -0
  123. package/dist/config/config-manager.js +245 -0
  124. package/dist/config/config-manager.js.map +1 -0
  125. package/dist/config/define-config.d.ts +20 -0
  126. package/dist/config/define-config.d.ts.map +1 -0
  127. package/dist/config/define-config.js +64 -0
  128. package/dist/config/define-config.js.map +1 -0
  129. package/dist/config/feature-flags.d.ts +48 -0
  130. package/dist/config/feature-flags.d.ts.map +1 -0
  131. package/dist/config/feature-flags.js +97 -0
  132. package/dist/config/feature-flags.js.map +1 -0
  133. package/dist/config/index.d.ts +9 -0
  134. package/dist/config/index.d.ts.map +1 -0
  135. package/dist/config/index.js +8 -0
  136. package/dist/config/index.js.map +1 -0
  137. package/dist/config/presets.d.ts +38 -0
  138. package/dist/config/presets.d.ts.map +1 -0
  139. package/dist/config/presets.js +29 -0
  140. package/dist/config/presets.js.map +1 -0
  141. package/dist/config/types.d.ts +707 -0
  142. package/dist/config/types.d.ts.map +1 -0
  143. package/dist/config/types.js +112 -0
  144. package/dist/config/types.js.map +1 -0
  145. package/dist/context/index.d.ts +95 -0
  146. package/dist/context/index.d.ts.map +1 -0
  147. package/dist/context/index.js +26 -0
  148. package/dist/context/index.js.map +1 -0
  149. package/dist/context/registry.d.ts +32 -0
  150. package/dist/context/registry.d.ts.map +1 -0
  151. package/dist/context/registry.js +142 -0
  152. package/dist/context/registry.js.map +1 -0
  153. package/dist/db/index.d.ts +2 -0
  154. package/dist/db/index.d.ts.map +1 -0
  155. package/dist/db/index.js +4 -0
  156. package/dist/db/index.js.map +1 -0
  157. package/dist/db/schema.d.ts +839 -0
  158. package/dist/db/schema.d.ts.map +1 -0
  159. package/dist/db/schema.js +106 -0
  160. package/dist/db/schema.js.map +1 -0
  161. package/dist/dml/entity.d.ts +132 -0
  162. package/dist/dml/entity.d.ts.map +1 -0
  163. package/dist/dml/entity.js +110 -0
  164. package/dist/dml/entity.js.map +1 -0
  165. package/dist/dml/from-zod.d.ts +13 -0
  166. package/dist/dml/from-zod.d.ts.map +1 -0
  167. package/dist/dml/from-zod.js +81 -0
  168. package/dist/dml/from-zod.js.map +1 -0
  169. package/dist/dml/generator/index.d.ts +62 -0
  170. package/dist/dml/generator/index.d.ts.map +1 -0
  171. package/dist/dml/generator/index.js +208 -0
  172. package/dist/dml/generator/index.js.map +1 -0
  173. package/dist/dml/index.d.ts +11 -0
  174. package/dist/dml/index.d.ts.map +1 -0
  175. package/dist/dml/index.js +13 -0
  176. package/dist/dml/index.js.map +1 -0
  177. package/dist/dml/infer.d.ts +36 -0
  178. package/dist/dml/infer.d.ts.map +1 -0
  179. package/dist/dml/infer.js +5 -0
  180. package/dist/dml/infer.js.map +1 -0
  181. package/dist/dml/model.d.ts +58 -0
  182. package/dist/dml/model.d.ts.map +1 -0
  183. package/dist/dml/model.js +95 -0
  184. package/dist/dml/model.js.map +1 -0
  185. package/dist/dml/modifiers.d.ts +9 -0
  186. package/dist/dml/modifiers.d.ts.map +1 -0
  187. package/dist/dml/modifiers.js +25 -0
  188. package/dist/dml/modifiers.js.map +1 -0
  189. package/dist/dml/properties/array.d.ts +7 -0
  190. package/dist/dml/properties/array.d.ts.map +1 -0
  191. package/dist/dml/properties/array.js +5 -0
  192. package/dist/dml/properties/array.js.map +1 -0
  193. package/dist/dml/properties/autoincrement.d.ts +7 -0
  194. package/dist/dml/properties/autoincrement.d.ts.map +1 -0
  195. package/dist/dml/properties/autoincrement.js +5 -0
  196. package/dist/dml/properties/autoincrement.js.map +1 -0
  197. package/dist/dml/properties/base.d.ts +124 -0
  198. package/dist/dml/properties/base.d.ts.map +1 -0
  199. package/dist/dml/properties/base.js +76 -0
  200. package/dist/dml/properties/base.js.map +1 -0
  201. package/dist/dml/properties/big-number.d.ts +7 -0
  202. package/dist/dml/properties/big-number.d.ts.map +1 -0
  203. package/dist/dml/properties/big-number.js +5 -0
  204. package/dist/dml/properties/big-number.js.map +1 -0
  205. package/dist/dml/properties/boolean.d.ts +7 -0
  206. package/dist/dml/properties/boolean.d.ts.map +1 -0
  207. package/dist/dml/properties/boolean.js +5 -0
  208. package/dist/dml/properties/boolean.js.map +1 -0
  209. package/dist/dml/properties/computed.d.ts +9 -0
  210. package/dist/dml/properties/computed.d.ts.map +1 -0
  211. package/dist/dml/properties/computed.js +22 -0
  212. package/dist/dml/properties/computed.js.map +1 -0
  213. package/dist/dml/properties/date-time.d.ts +7 -0
  214. package/dist/dml/properties/date-time.d.ts.map +1 -0
  215. package/dist/dml/properties/date-time.js +5 -0
  216. package/dist/dml/properties/date-time.js.map +1 -0
  217. package/dist/dml/properties/enum.d.ts +12 -0
  218. package/dist/dml/properties/enum.d.ts.map +1 -0
  219. package/dist/dml/properties/enum.js +14 -0
  220. package/dist/dml/properties/enum.js.map +1 -0
  221. package/dist/dml/properties/float.d.ts +7 -0
  222. package/dist/dml/properties/float.d.ts.map +1 -0
  223. package/dist/dml/properties/float.js +5 -0
  224. package/dist/dml/properties/float.js.map +1 -0
  225. package/dist/dml/properties/index.d.ts +15 -0
  226. package/dist/dml/properties/index.d.ts.map +1 -0
  227. package/dist/dml/properties/index.js +15 -0
  228. package/dist/dml/properties/index.js.map +1 -0
  229. package/dist/dml/properties/json.d.ts +7 -0
  230. package/dist/dml/properties/json.d.ts.map +1 -0
  231. package/dist/dml/properties/json.js +6 -0
  232. package/dist/dml/properties/json.js.map +1 -0
  233. package/dist/dml/properties/nullable.d.ts +23 -0
  234. package/dist/dml/properties/nullable.d.ts.map +1 -0
  235. package/dist/dml/properties/nullable.js +46 -0
  236. package/dist/dml/properties/nullable.js.map +1 -0
  237. package/dist/dml/properties/number.d.ts +10 -0
  238. package/dist/dml/properties/number.d.ts.map +1 -0
  239. package/dist/dml/properties/number.js +13 -0
  240. package/dist/dml/properties/number.js.map +1 -0
  241. package/dist/dml/properties/primary-key.d.ts +14 -0
  242. package/dist/dml/properties/primary-key.d.ts.map +1 -0
  243. package/dist/dml/properties/primary-key.js +23 -0
  244. package/dist/dml/properties/primary-key.js.map +1 -0
  245. package/dist/dml/properties/text.d.ts +15 -0
  246. package/dist/dml/properties/text.d.ts.map +1 -0
  247. package/dist/dml/properties/text.js +19 -0
  248. package/dist/dml/properties/text.js.map +1 -0
  249. package/dist/dml/relations/belongs-to.d.ts +20 -0
  250. package/dist/dml/relations/belongs-to.d.ts.map +1 -0
  251. package/dist/dml/relations/belongs-to.js +29 -0
  252. package/dist/dml/relations/belongs-to.js.map +1 -0
  253. package/dist/dml/relations/has-many.d.ts +16 -0
  254. package/dist/dml/relations/has-many.d.ts.map +1 -0
  255. package/dist/dml/relations/has-many.js +25 -0
  256. package/dist/dml/relations/has-many.js.map +1 -0
  257. package/dist/dml/relations/has-one.d.ts +26 -0
  258. package/dist/dml/relations/has-one.d.ts.map +1 -0
  259. package/dist/dml/relations/has-one.js +46 -0
  260. package/dist/dml/relations/has-one.js.map +1 -0
  261. package/dist/dml/relations/many-to-many.d.ts +9 -0
  262. package/dist/dml/relations/many-to-many.d.ts.map +1 -0
  263. package/dist/dml/relations/many-to-many.js +11 -0
  264. package/dist/dml/relations/many-to-many.js.map +1 -0
  265. package/dist/errors/manta-error.d.ts +68 -0
  266. package/dist/errors/manta-error.d.ts.map +1 -0
  267. package/dist/errors/manta-error.js +80 -0
  268. package/dist/errors/manta-error.js.map +1 -0
  269. package/dist/events/index.d.ts +3 -0
  270. package/dist/events/index.d.ts.map +1 -0
  271. package/dist/events/index.js +3 -0
  272. package/dist/events/index.js.map +1 -0
  273. package/dist/events/message-aggregator.d.ts +25 -0
  274. package/dist/events/message-aggregator.d.ts.map +1 -0
  275. package/dist/events/message-aggregator.js +35 -0
  276. package/dist/events/message-aggregator.js.map +1 -0
  277. package/dist/events/types.d.ts +42 -0
  278. package/dist/events/types.d.ts.map +1 -0
  279. package/dist/events/types.js +3 -0
  280. package/dist/events/types.js.map +1 -0
  281. package/dist/index.d.ts +55 -0
  282. package/dist/index.d.ts.map +1 -0
  283. package/dist/index.js +53 -0
  284. package/dist/index.js.map +1 -0
  285. package/dist/job/index.d.ts +52 -0
  286. package/dist/job/index.d.ts.map +1 -0
  287. package/dist/job/index.js +31 -0
  288. package/dist/job/index.js.map +1 -0
  289. package/dist/link/index.d.ts +97 -0
  290. package/dist/link/index.d.ts.map +1 -0
  291. package/dist/link/index.js +185 -0
  292. package/dist/link/index.js.map +1 -0
  293. package/dist/middleware/define-middleware.d.ts +54 -0
  294. package/dist/middleware/define-middleware.d.ts.map +1 -0
  295. package/dist/middleware/define-middleware.js +40 -0
  296. package/dist/middleware/define-middleware.js.map +1 -0
  297. package/dist/middleware/index.d.ts +56 -0
  298. package/dist/middleware/index.d.ts.map +1 -0
  299. package/dist/middleware/index.js +50 -0
  300. package/dist/middleware/index.js.map +1 -0
  301. package/dist/module/index.d.ts +56 -0
  302. package/dist/module/index.d.ts.map +1 -0
  303. package/dist/module/index.js +52 -0
  304. package/dist/module/index.js.map +1 -0
  305. package/dist/module/versioning.d.ts +27 -0
  306. package/dist/module/versioning.d.ts.map +1 -0
  307. package/dist/module/versioning.js +64 -0
  308. package/dist/module/versioning.js.map +1 -0
  309. package/dist/naming.d.ts +39 -0
  310. package/dist/naming.d.ts.map +1 -0
  311. package/dist/naming.js +95 -0
  312. package/dist/naming.js.map +1 -0
  313. package/dist/ports/analytics.d.ts +7 -0
  314. package/dist/ports/analytics.d.ts.map +1 -0
  315. package/dist/ports/analytics.js +3 -0
  316. package/dist/ports/analytics.js.map +1 -0
  317. package/dist/ports/auth.d.ts +27 -0
  318. package/dist/ports/auth.d.ts.map +1 -0
  319. package/dist/ports/auth.js +3 -0
  320. package/dist/ports/auth.js.map +1 -0
  321. package/dist/ports/cache.d.ts +35 -0
  322. package/dist/ports/cache.d.ts.map +1 -0
  323. package/dist/ports/cache.js +3 -0
  324. package/dist/ports/cache.js.map +1 -0
  325. package/dist/ports/database.d.ts +40 -0
  326. package/dist/ports/database.d.ts.map +1 -0
  327. package/dist/ports/database.js +3 -0
  328. package/dist/ports/database.js.map +1 -0
  329. package/dist/ports/event-bus.d.ts +85 -0
  330. package/dist/ports/event-bus.d.ts.map +1 -0
  331. package/dist/ports/event-bus.js +3 -0
  332. package/dist/ports/event-bus.js.map +1 -0
  333. package/dist/ports/file.d.ts +62 -0
  334. package/dist/ports/file.d.ts.map +1 -0
  335. package/dist/ports/file.js +3 -0
  336. package/dist/ports/file.js.map +1 -0
  337. package/dist/ports/http.d.ts +20 -0
  338. package/dist/ports/http.d.ts.map +1 -0
  339. package/dist/ports/http.js +3 -0
  340. package/dist/ports/http.js.map +1 -0
  341. package/dist/ports/in-memory-progress-channel.d.ts +9 -0
  342. package/dist/ports/in-memory-progress-channel.d.ts.map +1 -0
  343. package/dist/ports/in-memory-progress-channel.js +19 -0
  344. package/dist/ports/in-memory-progress-channel.js.map +1 -0
  345. package/dist/ports/in-memory-queue.d.ts +24 -0
  346. package/dist/ports/in-memory-queue.d.ts.map +1 -0
  347. package/dist/ports/in-memory-queue.js +63 -0
  348. package/dist/ports/in-memory-queue.js.map +1 -0
  349. package/dist/ports/index.d.ts +27 -0
  350. package/dist/ports/index.d.ts.map +1 -0
  351. package/dist/ports/index.js +6 -0
  352. package/dist/ports/index.js.map +1 -0
  353. package/dist/ports/job-scheduler.d.ts +42 -0
  354. package/dist/ports/job-scheduler.d.ts.map +1 -0
  355. package/dist/ports/job-scheduler.js +3 -0
  356. package/dist/ports/job-scheduler.js.map +1 -0
  357. package/dist/ports/locking.d.ts +43 -0
  358. package/dist/ports/locking.d.ts.map +1 -0
  359. package/dist/ports/locking.js +3 -0
  360. package/dist/ports/locking.js.map +1 -0
  361. package/dist/ports/logger.d.ts +65 -0
  362. package/dist/ports/logger.d.ts.map +1 -0
  363. package/dist/ports/logger.js +3 -0
  364. package/dist/ports/logger.js.map +1 -0
  365. package/dist/ports/notification.d.ts +71 -0
  366. package/dist/ports/notification.d.ts.map +1 -0
  367. package/dist/ports/notification.js +3 -0
  368. package/dist/ports/notification.js.map +1 -0
  369. package/dist/ports/progress-channel.d.ts +46 -0
  370. package/dist/ports/progress-channel.d.ts.map +1 -0
  371. package/dist/ports/progress-channel.js +6 -0
  372. package/dist/ports/progress-channel.js.map +1 -0
  373. package/dist/ports/queue.d.ts +21 -0
  374. package/dist/ports/queue.d.ts.map +1 -0
  375. package/dist/ports/queue.js +15 -0
  376. package/dist/ports/queue.js.map +1 -0
  377. package/dist/ports/relational-query.d.ts +37 -0
  378. package/dist/ports/relational-query.d.ts.map +1 -0
  379. package/dist/ports/relational-query.js +3 -0
  380. package/dist/ports/relational-query.js.map +1 -0
  381. package/dist/ports/repository-factory.d.ts +21 -0
  382. package/dist/ports/repository-factory.d.ts.map +1 -0
  383. package/dist/ports/repository-factory.js +4 -0
  384. package/dist/ports/repository-factory.js.map +1 -0
  385. package/dist/ports/repository.d.ts +73 -0
  386. package/dist/ports/repository.d.ts.map +1 -0
  387. package/dist/ports/repository.js +3 -0
  388. package/dist/ports/repository.js.map +1 -0
  389. package/dist/ports/schema-generator.d.ts +15 -0
  390. package/dist/ports/schema-generator.d.ts.map +1 -0
  391. package/dist/ports/schema-generator.js +4 -0
  392. package/dist/ports/schema-generator.js.map +1 -0
  393. package/dist/ports/search.d.ts +7 -0
  394. package/dist/ports/search.d.ts.map +1 -0
  395. package/dist/ports/search.js +3 -0
  396. package/dist/ports/search.js.map +1 -0
  397. package/dist/ports/types.d.ts +112 -0
  398. package/dist/ports/types.d.ts.map +1 -0
  399. package/dist/ports/types.js +26 -0
  400. package/dist/ports/types.js.map +1 -0
  401. package/dist/ports/workflow-store.d.ts +111 -0
  402. package/dist/ports/workflow-store.d.ts.map +1 -0
  403. package/dist/ports/workflow-store.js +5 -0
  404. package/dist/ports/workflow-store.js.map +1 -0
  405. package/dist/query/define-query-graph.d.ts +55 -0
  406. package/dist/query/define-query-graph.d.ts.map +1 -0
  407. package/dist/query/define-query-graph.js +59 -0
  408. package/dist/query/define-query-graph.js.map +1 -0
  409. package/dist/query/define-query.d.ts +79 -0
  410. package/dist/query/define-query.d.ts.map +1 -0
  411. package/dist/query/define-query.js +77 -0
  412. package/dist/query/define-query.js.map +1 -0
  413. package/dist/query/extend-query-graph.d.ts +36 -0
  414. package/dist/query/extend-query-graph.d.ts.map +1 -0
  415. package/dist/query/extend-query-graph.js +34 -0
  416. package/dist/query/extend-query-graph.js.map +1 -0
  417. package/dist/query/index.d.ts +181 -0
  418. package/dist/query/index.d.ts.map +1 -0
  419. package/dist/query/index.js +288 -0
  420. package/dist/query/index.js.map +1 -0
  421. package/dist/service/define.d.ts +97 -0
  422. package/dist/service/define.d.ts.map +1 -0
  423. package/dist/service/define.js +45 -0
  424. package/dist/service/define.js.map +1 -0
  425. package/dist/service/index.d.ts +52 -0
  426. package/dist/service/index.d.ts.map +1 -0
  427. package/dist/service/index.js +281 -0
  428. package/dist/service/index.js.map +1 -0
  429. package/dist/service/instantiate.d.ts +15 -0
  430. package/dist/service/instantiate.d.ts.map +1 -0
  431. package/dist/service/instantiate.js +143 -0
  432. package/dist/service/instantiate.js.map +1 -0
  433. package/dist/service/snapshot-repository.d.ts +31 -0
  434. package/dist/service/snapshot-repository.d.ts.map +1 -0
  435. package/dist/service/snapshot-repository.js +114 -0
  436. package/dist/service/snapshot-repository.js.map +1 -0
  437. package/dist/service/types.d.ts +39 -0
  438. package/dist/service/types.d.ts.map +1 -0
  439. package/dist/service/types.js +3 -0
  440. package/dist/service/types.js.map +1 -0
  441. package/dist/strict-mode/index.d.ts +42 -0
  442. package/dist/strict-mode/index.d.ts.map +1 -0
  443. package/dist/strict-mode/index.js +84 -0
  444. package/dist/strict-mode/index.js.map +1 -0
  445. package/dist/subscriber/index.d.ts +117 -0
  446. package/dist/subscriber/index.d.ts.map +1 -0
  447. package/dist/subscriber/index.js +76 -0
  448. package/dist/subscriber/index.js.map +1 -0
  449. package/dist/testing/relational-query-suite.d.ts +22 -0
  450. package/dist/testing/relational-query-suite.d.ts.map +1 -0
  451. package/dist/testing/relational-query-suite.js +233 -0
  452. package/dist/testing/relational-query-suite.js.map +1 -0
  453. package/dist/user/auto-routes.d.ts +32 -0
  454. package/dist/user/auto-routes.d.ts.map +1 -0
  455. package/dist/user/auto-routes.js +424 -0
  456. package/dist/user/auto-routes.js.map +1 -0
  457. package/dist/user/define-user.d.ts +54 -0
  458. package/dist/user/define-user.d.ts.map +1 -0
  459. package/dist/user/define-user.js +103 -0
  460. package/dist/user/define-user.js.map +1 -0
  461. package/dist/user/index.d.ts +7 -0
  462. package/dist/user/index.d.ts.map +1 -0
  463. package/dist/user/index.js +5 -0
  464. package/dist/user/index.js.map +1 -0
  465. package/dist/user/models/user.d.ts +15 -0
  466. package/dist/user/models/user.d.ts.map +1 -0
  467. package/dist/user/models/user.js +16 -0
  468. package/dist/user/models/user.js.map +1 -0
  469. package/dist/user/user-module-service.d.ts +55 -0
  470. package/dist/user/user-module-service.d.ts.map +1 -0
  471. package/dist/user/user-module-service.js +100 -0
  472. package/dist/user/user-module-service.js.map +1 -0
  473. package/dist/workflows/ai-step.d.ts +2 -0
  474. package/dist/workflows/ai-step.d.ts.map +1 -0
  475. package/dist/workflows/ai-step.js +54 -0
  476. package/dist/workflows/ai-step.js.map +1 -0
  477. package/dist/workflows/create-step.d.ts +16 -0
  478. package/dist/workflows/create-step.d.ts.map +1 -0
  479. package/dist/workflows/create-step.js +194 -0
  480. package/dist/workflows/create-step.js.map +1 -0
  481. package/dist/workflows/create-workflow.d.ts +16 -0
  482. package/dist/workflows/create-workflow.d.ts.map +1 -0
  483. package/dist/workflows/create-workflow.js +21 -0
  484. package/dist/workflows/create-workflow.js.map +1 -0
  485. package/dist/workflows/define-workflow.d.ts +55 -0
  486. package/dist/workflows/define-workflow.d.ts.map +1 -0
  487. package/dist/workflows/define-workflow.js +72 -0
  488. package/dist/workflows/define-workflow.js.map +1 -0
  489. package/dist/workflows/emit-event-step.d.ts +17 -0
  490. package/dist/workflows/emit-event-step.d.ts.map +1 -0
  491. package/dist/workflows/emit-event-step.js +46 -0
  492. package/dist/workflows/emit-event-step.js.map +1 -0
  493. package/dist/workflows/for-each.d.ts +6 -0
  494. package/dist/workflows/for-each.d.ts.map +1 -0
  495. package/dist/workflows/for-each.js +79 -0
  496. package/dist/workflows/for-each.js.map +1 -0
  497. package/dist/workflows/index.d.ts +15 -0
  498. package/dist/workflows/index.d.ts.map +1 -0
  499. package/dist/workflows/index.js +12 -0
  500. package/dist/workflows/index.js.map +1 -0
  501. package/dist/workflows/manager.d.ts +99 -0
  502. package/dist/workflows/manager.d.ts.map +1 -0
  503. package/dist/workflows/manager.js +450 -0
  504. package/dist/workflows/manager.js.map +1 -0
  505. package/dist/workflows/orphan-reaper.d.ts +50 -0
  506. package/dist/workflows/orphan-reaper.d.ts.map +1 -0
  507. package/dist/workflows/orphan-reaper.js +69 -0
  508. package/dist/workflows/orphan-reaper.js.map +1 -0
  509. package/dist/workflows/progress-helper.d.ts +20 -0
  510. package/dist/workflows/progress-helper.d.ts.map +1 -0
  511. package/dist/workflows/progress-helper.js +48 -0
  512. package/dist/workflows/progress-helper.js.map +1 -0
  513. package/dist/workflows/step.d.ts +103 -0
  514. package/dist/workflows/step.d.ts.map +1 -0
  515. package/dist/workflows/step.js +949 -0
  516. package/dist/workflows/step.js.map +1 -0
  517. package/dist/workflows/types.d.ts +215 -0
  518. package/dist/workflows/types.d.ts.map +1 -0
  519. package/dist/workflows/types.js +9 -0
  520. package/dist/workflows/types.js.map +1 -0
  521. package/dist/workflows/yield.d.ts +12 -0
  522. package/dist/workflows/yield.d.ts.map +1 -0
  523. package/dist/workflows/yield.js +29 -0
  524. package/dist/workflows/yield.js.map +1 -0
  525. package/docs/00-overview.md +254 -0
  526. package/docs/01-getting-started.md +224 -0
  527. package/docs/02-models.md +163 -0
  528. package/docs/03-services.md +208 -0
  529. package/docs/04-users.md +165 -0
  530. package/docs/05-commands.md +501 -0
  531. package/docs/06-queries.md +342 -0
  532. package/docs/07-events.md +248 -0
  533. package/docs/08-links.md +182 -0
  534. package/docs/09-agents.md +142 -0
  535. package/docs/10-spa.md +327 -0
  536. package/docs/11-config.md +481 -0
  537. package/docs/12-constraints.md +183 -0
  538. package/docs/13-testing.md +345 -0
  539. package/docs/14-adapters.md +204 -0
  540. package/docs/15-hosts.md +163 -0
  541. package/docs/16-reference.md +274 -0
  542. package/docs/17-dashboard.md +619 -0
  543. package/docs/AGENT.md +501 -0
  544. package/package.json +49 -52
  545. package/.medusa/server/src/admin/index.js +0 -5493
  546. package/.medusa/server/src/admin/index.mjs +0 -5491
  547. package/.medusa/server/src/api/admin/companies/[id]/route.js +0 -39
  548. package/.medusa/server/src/api/admin/companies/middlewares.js +0 -41
  549. package/.medusa/server/src/api/admin/companies/route.js +0 -37
  550. package/.medusa/server/src/api/admin/companies/validators.js +0 -29
  551. package/.medusa/server/src/api/admin/employees/middlewares.js +0 -15
  552. package/.medusa/server/src/api/admin/employees/route.js +0 -21
  553. package/.medusa/server/src/api/middlewares.js +0 -9
  554. package/.medusa/server/src/index.js +0 -5
  555. package/.medusa/server/src/modules/company/index.js +0 -13
  556. package/.medusa/server/src/modules/company/migrations/Migration20260126141741.js +0 -26
  557. package/.medusa/server/src/modules/company/models/company.js +0 -24
  558. package/.medusa/server/src/modules/company/models/employee.js +0 -15
  559. package/.medusa/server/src/modules/company/models/index.js +0 -11
  560. package/.medusa/server/src/modules/company/service.js +0 -11
  561. package/.medusa/server/src/workflows/create-company.js +0 -10
  562. package/.medusa/server/src/workflows/delete-company.js +0 -10
  563. package/.medusa/server/src/workflows/steps/create-company.js +0 -16
  564. package/.medusa/server/src/workflows/steps/delete-company.js +0 -30
  565. package/.medusa/server/src/workflows/steps/update-company.js +0 -30
  566. package/.medusa/server/src/workflows/update-company.js +0 -10
@@ -0,0 +1,63 @@
1
+ import type { AuthContext } from '../auth/types';
2
+ /**
3
+ * Module name for command graph access — autocompletes from codegen.
4
+ */
5
+ type ModuleNameArg = keyof MantaGeneratedAppModules | (string & {});
6
+ /**
7
+ * Per-module command access rule:
8
+ * - `true` — all commands of this module
9
+ * - `string[]` — only these command operations (e.g. ['create', 'update', 'delete'])
10
+ * - `(auth) => filters` — all commands, but with row-level scope injected into context
11
+ */
12
+ export type CommandAccessRule = true | string[] | ((auth: AuthContext) => Record<string, unknown>);
13
+ /**
14
+ * Module access map — defines which modules' commands are accessible and how.
15
+ */
16
+ export type CommandAccessMap = Record<string, CommandAccessRule>;
17
+ /**
18
+ * Command graph definition — controls which module commands are exposed in a context.
19
+ */
20
+ export interface CommandGraphDefinition {
21
+ __type: 'command-graph';
22
+ /** '*' = wildcard (all modules, all commands). Otherwise per-module rules. */
23
+ access: '*' | CommandAccessMap;
24
+ }
25
+ /**
26
+ * Define command graph access for a context.
27
+ *
28
+ * @example
29
+ * ```typescript
30
+ * // src/commands/admin/graph.ts — full access
31
+ * export default defineCommandGraph('*')
32
+ *
33
+ * // src/commands/store/graph.ts — scoped access
34
+ * export default defineCommandGraph({
35
+ * catalog: true, // all catalog commands
36
+ * customer: ['create', 'update'], // only create + update
37
+ * order: (auth) => ({ customer_id: auth.id }), // all commands, scoped to user
38
+ * })
39
+ * ```
40
+ */
41
+ export declare function defineCommandGraph(access: '*'): CommandGraphDefinition;
42
+ export declare function defineCommandGraph(access: Record<ModuleNameArg, CommandAccessRule>): CommandGraphDefinition;
43
+ /**
44
+ * Check if a module is allowed by the command graph definition.
45
+ */
46
+ export declare function isModuleAllowed(def: CommandGraphDefinition, moduleName: string): boolean;
47
+ /**
48
+ * Check if a specific command operation is allowed for a module.
49
+ * @param def - Command graph definition
50
+ * @param moduleName - Module name (e.g. 'catalog')
51
+ * @param operation - Command operation (e.g. 'create', 'update', 'delete', or custom name)
52
+ * @returns true if allowed, false if blocked
53
+ */
54
+ export declare function isCommandAllowed(def: CommandGraphDefinition, moduleName: string, operation: string): boolean;
55
+ /**
56
+ * Get the row-level scope for a module's commands, given the auth context.
57
+ * Returns undefined if no scope (wildcard, `true`, or array rule).
58
+ * Returns the scope record if a function rule is defined.
59
+ * Returns null if module is not allowed.
60
+ */
61
+ export declare function getCommandScope(def: CommandGraphDefinition, moduleName: string, auth: AuthContext | null): Record<string, unknown> | undefined | null;
62
+ export {};
63
+ //# sourceMappingURL=define-command-graph.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"define-command-graph.d.ts","sourceRoot":"","sources":["../../src/command/define-command-graph.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAGhD;;GAEG;AACH,KAAK,aAAa,GAAG,MAAM,wBAAwB,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAA;AAEnE;;;;;GAKG;AACH,MAAM,MAAM,iBAAiB,GAAG,IAAI,GAAG,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,WAAW,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;AAElG;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAA;AAEhE;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,eAAe,CAAA;IACvB,8EAA8E;IAC9E,MAAM,EAAE,GAAG,GAAG,gBAAgB,CAAA;CAC/B;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,GAAG,GAAG,sBAAsB,CAAA;AACvE,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC,aAAa,EAAE,iBAAiB,CAAC,GAAG,sBAAsB,CAAA;AAe5G;;GAEG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,sBAAsB,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAGxF;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,sBAAsB,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAS5G;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAC7B,GAAG,EAAE,sBAAsB,EAC3B,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,WAAW,GAAG,IAAI,GACvB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAAG,IAAI,CAO5C"}
@@ -0,0 +1,80 @@
1
+ // defineCommandGraph — Expose module commands for a context via catch-all route.
2
+ //
3
+ // Three modes:
4
+ // defineCommandGraph('*') → wildcard, all module commands
5
+ // defineCommandGraph({ catalog: true, customer: ['create', 'update'] })
6
+ // → per-module filtering
7
+ // No defineCommandGraph = no catch-all command access → only explicit defineCommand routes
8
+ //
9
+ // Usage:
10
+ // // src/commands/admin/graph.ts — full access
11
+ // export default defineCommandGraph('*')
12
+ //
13
+ // // src/commands/store/graph.ts — scoped access
14
+ // export default defineCommandGraph({
15
+ // catalog: true,
16
+ // customer: ['create', 'update'],
17
+ // order: (auth) => ({ customer_id: auth.id }),
18
+ // })
19
+ import { MantaError } from '../errors/manta-error';
20
+ export function defineCommandGraph(access) {
21
+ if (access !== '*' && (typeof access !== 'object' || access === null)) {
22
+ throw new MantaError('INVALID_DATA', 'defineCommandGraph() requires "*" or a module access map');
23
+ }
24
+ if (typeof access === 'object' && Object.keys(access).length === 0) {
25
+ throw new MantaError('INVALID_DATA', 'defineCommandGraph() module map cannot be empty. Use "*" for full access.');
26
+ }
27
+ return {
28
+ __type: 'command-graph',
29
+ access,
30
+ };
31
+ }
32
+ /**
33
+ * Check if a module is allowed by the command graph definition.
34
+ */
35
+ export function isModuleAllowed(def, moduleName) {
36
+ if (def.access === '*')
37
+ return true;
38
+ return moduleName in def.access;
39
+ }
40
+ /**
41
+ * Check if a specific command operation is allowed for a module.
42
+ * @param def - Command graph definition
43
+ * @param moduleName - Module name (e.g. 'catalog')
44
+ * @param operation - Command operation (e.g. 'create', 'update', 'delete', or custom name)
45
+ * @returns true if allowed, false if blocked
46
+ */
47
+ export function isCommandAllowed(def, moduleName, operation) {
48
+ if (def.access === '*')
49
+ return true;
50
+ const rule = def.access[moduleName];
51
+ if (rule === undefined)
52
+ return false;
53
+ if (rule === true)
54
+ return true;
55
+ if (Array.isArray(rule))
56
+ return rule.includes(operation);
57
+ // Function rule = all commands allowed (scoping is applied at execution time)
58
+ if (typeof rule === 'function')
59
+ return true;
60
+ return false;
61
+ }
62
+ /**
63
+ * Get the row-level scope for a module's commands, given the auth context.
64
+ * Returns undefined if no scope (wildcard, `true`, or array rule).
65
+ * Returns the scope record if a function rule is defined.
66
+ * Returns null if module is not allowed.
67
+ */
68
+ export function getCommandScope(def, moduleName, auth) {
69
+ if (def.access === '*')
70
+ return undefined; // no scope
71
+ const rule = def.access[moduleName];
72
+ if (rule === undefined)
73
+ return null; // not allowed
74
+ if (rule === true || Array.isArray(rule))
75
+ return undefined; // no scope
76
+ if (!auth)
77
+ return null; // scoped module but no auth → blocked
78
+ return rule(auth);
79
+ }
80
+ //# sourceMappingURL=define-command-graph.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"define-command-graph.js","sourceRoot":"","sources":["../../src/command/define-command-graph.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,EAAE;AACF,eAAe;AACf,yFAAyF;AACzF,0EAA0E;AAC1E,gFAAgF;AAChF,+FAA+F;AAC/F,EAAE;AACF,SAAS;AACT,iDAAiD;AACjD,2CAA2C;AAC3C,EAAE;AACF,mDAAmD;AACnD,wCAAwC;AACxC,qBAAqB;AACrB,sCAAsC;AACtC,mDAAmD;AACnD,OAAO;AAGP,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AA+ClD,MAAM,UAAU,kBAAkB,CAAC,MAAsD;IACvF,IAAI,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,CAAC,EAAE,CAAC;QACtE,MAAM,IAAI,UAAU,CAAC,cAAc,EAAE,0DAA0D,CAAC,CAAA;IAClG,CAAC;IACD,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACnE,MAAM,IAAI,UAAU,CAAC,cAAc,EAAE,2EAA2E,CAAC,CAAA;IACnH,CAAC;IAED,OAAO;QACL,MAAM,EAAE,eAAe;QACvB,MAAM;KACP,CAAA;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,GAA2B,EAAE,UAAkB;IAC7E,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG;QAAE,OAAO,IAAI,CAAA;IACnC,OAAO,UAAU,IAAI,GAAG,CAAC,MAAM,CAAA;AACjC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB,CAAC,GAA2B,EAAE,UAAkB,EAAE,SAAiB;IACjG,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG;QAAE,OAAO,IAAI,CAAA;IACnC,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;IACnC,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,KAAK,CAAA;IACpC,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,IAAI,CAAA;IAC9B,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;IACxD,8EAA8E;IAC9E,IAAI,OAAO,IAAI,KAAK,UAAU;QAAE,OAAO,IAAI,CAAA;IAC3C,OAAO,KAAK,CAAA;AACd,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAC7B,GAA2B,EAC3B,UAAkB,EAClB,IAAwB;IAExB,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG;QAAE,OAAO,SAAS,CAAA,CAAC,WAAW;IACpD,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;IACnC,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,IAAI,CAAA,CAAC,cAAc;IAClD,IAAI,IAAI,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;QAAE,OAAO,SAAS,CAAA,CAAC,WAAW;IACtE,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAA,CAAC,sCAAsC;IAC7D,OAAO,IAAI,CAAC,IAAI,CAAC,CAAA;AACnB,CAAC"}
@@ -0,0 +1,34 @@
1
+ import { z } from 'zod';
2
+ import type { DmlEntity } from '../dml/entity';
3
+ export interface EntityZodSchemas {
4
+ /** Zod schema for create input — required fields required, nullable/default fields optional */
5
+ create: z.ZodObject<Record<string, z.ZodType>>;
6
+ /** Zod schema for update input — all fields optional + required `id` */
7
+ update: z.ZodObject<Record<string, z.ZodType>>;
8
+ /** Zod schema for delete input — just `id` (or `ids` for bulk) */
9
+ delete: z.ZodObject<Record<string, z.ZodType>>;
10
+ /** Zod schema for retrieve input — just `id` */
11
+ retrieve: z.ZodObject<Record<string, z.ZodType>>;
12
+ /** Zod schema for list input — filters + pagination */
13
+ list: z.ZodObject<Record<string, z.ZodType>>;
14
+ }
15
+ /**
16
+ * Generate Zod schemas from a DML entity for auto-generated commands.
17
+ *
18
+ * @example
19
+ * ```typescript
20
+ * const Product = defineModel('Product', {
21
+ * title: field.text(),
22
+ * price: field.number(),
23
+ * status: field.enum(['draft', 'active']),
24
+ * description: field.text().nullable(),
25
+ * })
26
+ *
27
+ * const schemas = dmlToZod(Product)
28
+ * // schemas.create → z.object({ title: z.string(), price: z.number(), status: z.enum([...]), description: z.string().nullable().optional() })
29
+ * // schemas.update → z.object({ id: z.string(), title: z.string().optional(), ... })
30
+ * // schemas.delete → z.object({ id: z.string() })
31
+ * ```
32
+ */
33
+ export declare function dmlToZod(entity: DmlEntity): EntityZodSchemas;
34
+ //# sourceMappingURL=dml-to-zod.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dml-to-zod.d.ts","sourceRoot":"","sources":["../../src/command/dml-to-zod.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AA8G9C,MAAM,WAAW,gBAAgB;IAC/B,+FAA+F;IAC/F,MAAM,EAAE,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAA;IAC9C,wEAAwE;IACxE,MAAM,EAAE,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAA;IAC9C,kEAAkE;IAClE,MAAM,EAAE,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAA;IAC9C,gDAAgD;IAChD,QAAQ,EAAE,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAA;IAChD,uDAAuD;IACvD,IAAI,EAAE,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAA;CAC7C;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,gBAAgB,CA0C5D"}
@@ -0,0 +1,140 @@
1
+ // dmlToZod — Convert a DML entity schema to Zod schemas for auto-generated commands.
2
+ //
3
+ // Given a DmlEntity, produces:
4
+ // createSchema — required fields required, nullable fields optional
5
+ // updateSchema — all fields optional + required `id`
6
+ //
7
+ // Implicit fields (id, created_at, updated_at, deleted_at) are excluded from create input.
8
+ import { z } from 'zod';
9
+ import { DmlEntity as DmlEntityClass } from '../dml/entity';
10
+ const IMPLICIT_FIELDS = new Set(['id', 'metadata', 'created_at', 'updated_at', 'deleted_at']);
11
+ /**
12
+ * Map a DML property dataType.name to a Zod type.
13
+ */
14
+ function propertyToZod(meta) {
15
+ let schema;
16
+ switch (meta.dataType.name) {
17
+ case 'text':
18
+ schema = z.string();
19
+ break;
20
+ case 'number':
21
+ case 'float':
22
+ case 'bigNumber':
23
+ case 'autoIncrement':
24
+ schema = z.number();
25
+ break;
26
+ case 'boolean':
27
+ schema = z.boolean();
28
+ break;
29
+ case 'dateTime':
30
+ schema = z.string().datetime().or(z.date());
31
+ break;
32
+ case 'json':
33
+ schema = z.unknown();
34
+ break;
35
+ case 'enum': {
36
+ const values = (meta.values ?? meta.dataType.options?.values);
37
+ if (values && values.length > 0) {
38
+ schema = z.enum(values);
39
+ }
40
+ else {
41
+ schema = z.string();
42
+ }
43
+ break;
44
+ }
45
+ case 'array':
46
+ schema = z.array(z.unknown());
47
+ break;
48
+ default:
49
+ schema = z.unknown();
50
+ }
51
+ if (meta.nullable) {
52
+ schema = schema.nullable();
53
+ }
54
+ return schema;
55
+ }
56
+ /**
57
+ * Parse a DmlEntity schema into field metadata.
58
+ * Handles both DmlPropertyDefinition objects (with parse()) and DmlRelationDefinition objects.
59
+ */
60
+ function parseEntityFields(entity) {
61
+ const fields = [];
62
+ for (const [key, value] of Object.entries(entity.schema)) {
63
+ if (IMPLICIT_FIELDS.has(key))
64
+ continue;
65
+ // Skip relations
66
+ if (DmlEntityClass.isRelation(value))
67
+ continue;
68
+ // Parse property metadata
69
+ if (typeof value.parse === 'function') {
70
+ const meta = value.parse(key);
71
+ // Skip computed properties (not stored)
72
+ if (meta.computed)
73
+ continue;
74
+ fields.push({
75
+ fieldName: key,
76
+ zodType: propertyToZod(meta),
77
+ nullable: meta.nullable,
78
+ hasDefault: meta.defaultValue !== undefined,
79
+ });
80
+ }
81
+ }
82
+ return fields;
83
+ }
84
+ /**
85
+ * Generate Zod schemas from a DML entity for auto-generated commands.
86
+ *
87
+ * @example
88
+ * ```typescript
89
+ * const Product = defineModel('Product', {
90
+ * title: field.text(),
91
+ * price: field.number(),
92
+ * status: field.enum(['draft', 'active']),
93
+ * description: field.text().nullable(),
94
+ * })
95
+ *
96
+ * const schemas = dmlToZod(Product)
97
+ * // schemas.create → z.object({ title: z.string(), price: z.number(), status: z.enum([...]), description: z.string().nullable().optional() })
98
+ * // schemas.update → z.object({ id: z.string(), title: z.string().optional(), ... })
99
+ * // schemas.delete → z.object({ id: z.string() })
100
+ * ```
101
+ */
102
+ export function dmlToZod(entity) {
103
+ const fields = parseEntityFields(entity);
104
+ // --- Create schema ---
105
+ const createShape = {};
106
+ for (const f of fields) {
107
+ if (f.nullable || f.hasDefault) {
108
+ // Nullable or has default → optional in create
109
+ createShape[f.fieldName] = f.zodType.optional();
110
+ }
111
+ else {
112
+ // Required
113
+ createShape[f.fieldName] = f.zodType;
114
+ }
115
+ }
116
+ const create = z.object(createShape);
117
+ // --- Update schema ---
118
+ const updateShape = { id: z.string() };
119
+ for (const f of fields) {
120
+ updateShape[f.fieldName] = f.zodType.optional();
121
+ }
122
+ const update = z.object(updateShape);
123
+ // --- Delete schema ---
124
+ const del = z.object({
125
+ id: z.string(),
126
+ });
127
+ // --- Retrieve schema ---
128
+ const retrieve = z.object({
129
+ id: z.string(),
130
+ });
131
+ // --- List schema ---
132
+ const list = z.object({
133
+ filters: z.record(z.unknown()).optional(),
134
+ limit: z.number().int().min(1).max(1000).optional(),
135
+ offset: z.number().int().min(0).optional(),
136
+ order: z.record(z.enum(['ASC', 'DESC'])).optional(),
137
+ });
138
+ return { create, update, delete: del, retrieve, list };
139
+ }
140
+ //# sourceMappingURL=dml-to-zod.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dml-to-zod.js","sourceRoot":"","sources":["../../src/command/dml-to-zod.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,68 @@
1
+ import type { DmlEntity } from '../dml/entity';
2
+ import type { ResolvedLink } from '../link';
3
+ import type { CommandDefinition } from './types';
4
+ /**
5
+ * Entity command operation type.
6
+ * Used for filtering in defineCommandGraph (e.g. customer: ['create', 'update']).
7
+ */
8
+ export type EntityCommandOperation = 'create' | 'update' | 'delete' | 'retrieve' | 'list' | 'link' | 'unlink';
9
+ /**
10
+ * A generated entity command — a CommandDefinition augmented with module/entity metadata.
11
+ */
12
+ export interface EntityCommand extends CommandDefinition {
13
+ /** Module this command belongs to (e.g. 'catalog') */
14
+ __module: string;
15
+ /** Entity this command operates on (e.g. 'Product') */
16
+ __entity: string;
17
+ /** CRUD operation type */
18
+ __operation: EntityCommandOperation;
19
+ /** Whether this is an auto-generated command (vs explicit) */
20
+ __autoGenerated: true;
21
+ }
22
+ /**
23
+ * Generate CRUD commands for a single entity within a module.
24
+ *
25
+ * Command names use camelCase for ergonomic `step.command.createProduct()` usage.
26
+ * The HTTP route handler converts kebab-case URLs to camelCase for lookup.
27
+ *
28
+ * @param moduleName - Module name (e.g. 'customer')
29
+ * @param entity - DML entity definition
30
+ * @returns Array of auto-generated EntityCommand definitions
31
+ *
32
+ * @example
33
+ * ```typescript
34
+ * const Customer = defineModel('Customer', { email: field.text(), name: field.text() })
35
+ * const commands = generateEntityCommands('customer', Customer)
36
+ * // → [
37
+ * // { name: 'createCustomer', ... },
38
+ * // { name: 'updateCustomer', ... },
39
+ * // { name: 'deleteCustomer', ... },
40
+ * // { name: 'retrieveCustomer', ... },
41
+ * // { name: 'listCustomers', ... },
42
+ * // ]
43
+ * // Usage: step.command.createCustomer({ email: '...' })
44
+ * // HTTP: POST /api/admin/command/create-customer
45
+ * ```
46
+ */
47
+ export declare function generateEntityCommands(moduleName: string, entity: DmlEntity): EntityCommand[];
48
+ /**
49
+ * Generate entity commands for all entities in a module.
50
+ */
51
+ export declare function generateModuleCommands(moduleName: string, models: Record<string, DmlEntity>): EntityCommand[];
52
+ /**
53
+ * Generate link and unlink commands for a ResolvedLink.
54
+ *
55
+ * Names are camelCase for ergonomic usage: `step.command.linkCustomerCustomerGroup()`
56
+ *
57
+ * @example
58
+ * ```typescript
59
+ * // From: defineLink(many('customer'), many('customer_group'))
60
+ * // Generates:
61
+ * // { name: 'linkCustomerCustomerGroup', ... }
62
+ * // { name: 'unlinkCustomerCustomerGroup', ... }
63
+ * // Usage: step.command.linkCustomerCustomerGroup({ customer_id: '...', customer_group_id: '...' })
64
+ * // HTTP: POST /api/admin/command/link-customer-customer-group
65
+ * ```
66
+ */
67
+ export declare function generateLinkCommands(link: ResolvedLink): EntityCommand[];
68
+ //# sourceMappingURL=generate-entity-commands.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-entity-commands.d.ts","sourceRoot":"","sources":["../../src/command/generate-entity-commands.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAE9C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAG3C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAEhD;;;GAGG;AACH,MAAM,MAAM,sBAAsB,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG,QAAQ,CAAA;AAE7G;;GAEG;AACH,MAAM,WAAW,aAAc,SAAQ,iBAAiB;IACtD,sDAAsD;IACtD,QAAQ,EAAE,MAAM,CAAA;IAChB,uDAAuD;IACvD,QAAQ,EAAE,MAAM,CAAA;IAChB,0BAA0B;IAC1B,WAAW,EAAE,sBAAsB,CAAA;IACnC,8DAA8D;IAC9D,eAAe,EAAE,IAAI,CAAA;CACtB;AA2BD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,GAAG,aAAa,EAAE,CA6I7F;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,aAAa,EAAE,CAM7G;AAMD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,YAAY,GAAG,aAAa,EAAE,CA8JxE"}