@tailor-platform/erp-kit 0.4.1 → 0.5.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 (940) hide show
  1. package/CHANGELOG.md +36 -0
  2. package/README.md +12 -12
  3. package/dist/cli.mjs +503 -32
  4. package/package.json +2 -11
  5. package/skills/erp-kit-app-2-requirements-review/SKILL.md +2 -2
  6. package/skills/erp-kit-app-2-requirements-review/references/best-practices-check.md +1 -1
  7. package/skills/erp-kit-app-3-plan/references/resolver-extraction.md +6 -3
  8. package/skills/erp-kit-app-4-plan-review/SKILL.md +5 -3
  9. package/skills/erp-kit-app-4-plan-review/references/orphan-detection.md +3 -0
  10. package/skills/erp-kit-app-4-plan-review/references/story-resolver-parity.md +21 -3
  11. package/skills/erp-kit-app-5-impl-backend/SKILL.md +15 -4
  12. package/skills/erp-kit-app-6-impl-frontend/SKILL.md +8 -4
  13. package/skills/erp-kit-app-7-impl-review/SKILL.md +1 -1
  14. package/skills/erp-kit-app-shared/references/resolver-classification.md +3 -0
  15. package/skills/erp-kit-module-2-requirements-review/SKILL.md +3 -30
  16. package/skills/erp-kit-module-3-update-plan/SKILL.md +132 -0
  17. package/skills/erp-kit-module-3-update-plan/references/command-extraction.md +87 -0
  18. package/skills/erp-kit-module-3-update-plan/references/model-extraction.md +72 -0
  19. package/skills/erp-kit-module-3-update-plan/references/naming.md +73 -0
  20. package/skills/erp-kit-module-3-update-plan/references/query-extraction.md +59 -0
  21. package/skills/erp-kit-module-4-plan-review/SKILL.md +3 -69
  22. package/skills/erp-kit-module-5-impl/SKILL.md +1 -0
  23. package/skills/erp-kit-module-6-impl-review/SKILL.md +42 -120
  24. package/skills/erp-kit-module-6-impl-review/references/command-doc-test-parity.md +1 -1
  25. package/skills/erp-kit-module-6-impl-review/references/{error-implementation-parity.md → command-error-implementation-parity.md} +3 -3
  26. package/skills/erp-kit-module-6-impl-review/references/impl-parity-report-format.md +1 -1
  27. package/skills/erp-kit-module-6-impl-review/references/query-doc-code-parity.md +110 -0
  28. package/skills/erp-kit-module-6-impl-review/references/query-doc-test-parity.md +108 -0
  29. package/skills/erp-kit-module-6-impl-review/references/query-error-implementation-parity.md +100 -0
  30. package/src/commands/app/index.ts +18 -3
  31. package/src/commands/check.test.ts +1 -1
  32. package/src/commands/doc/module.ts +2 -3
  33. package/src/commands/doc/modules.test.ts +0 -7
  34. package/src/commands/doc/modules.ts +1 -2
  35. package/src/commands/doc/search.ts +1 -2
  36. package/src/commands/init-module.test.ts +17 -3
  37. package/src/commands/init-module.ts +0 -12
  38. package/src/commands/init.ts +4 -0
  39. package/src/commands/lib/distribute.test.ts +32 -1
  40. package/src/commands/lib/distribute.ts +47 -5
  41. package/src/commands/lib/sync-check-source.test.ts +1 -1
  42. package/src/commands/update.test.ts +16 -0
  43. package/src/commands/update.ts +4 -1
  44. package/src/generator/generate-code-boilerplate.test.ts +9 -1
  45. package/src/generator/generate-seed.ts +69 -0
  46. package/src/generator/scaffold.ts +6 -2
  47. package/src/mdschema.ts +39 -3
  48. package/src/module.ts +56 -0
  49. package/src/modules/business-partner/README.md +2 -2
  50. package/src/modules/inventory/README.md +65 -0
  51. package/src/modules/inventory/command/approveCountLine.generated.ts +6 -0
  52. package/src/modules/inventory/command/approveCountLine.test.ts +89 -0
  53. package/src/modules/inventory/command/approveCountLine.ts +68 -0
  54. package/src/modules/inventory/command/approveInventoryAdjustment.generated.ts +6 -0
  55. package/src/modules/inventory/command/approveInventoryAdjustment.test.ts +56 -0
  56. package/src/modules/inventory/command/approveInventoryAdjustment.ts +50 -0
  57. package/src/modules/inventory/command/assignSerialNumber.generated.ts +6 -0
  58. package/src/modules/inventory/command/assignSerialNumber.test.ts +133 -0
  59. package/src/modules/inventory/command/assignSerialNumber.ts +83 -0
  60. package/src/modules/inventory/command/cancelInventoryCount.generated.ts +6 -0
  61. package/src/modules/inventory/command/cancelInventoryCount.test.ts +114 -0
  62. package/src/modules/inventory/command/cancelInventoryCount.ts +62 -0
  63. package/src/modules/inventory/command/cancelStockMovement.generated.ts +6 -0
  64. package/src/modules/inventory/command/cancelStockMovement.test.ts +102 -0
  65. package/src/modules/inventory/command/cancelStockMovement.ts +56 -0
  66. package/src/modules/inventory/command/completeInventoryCount.generated.ts +6 -0
  67. package/src/modules/inventory/command/completeInventoryCount.test.ts +99 -0
  68. package/src/modules/inventory/command/completeInventoryCount.ts +70 -0
  69. package/src/modules/inventory/command/confirmInventoryAdjustment.generated.ts +6 -0
  70. package/src/modules/inventory/command/confirmInventoryAdjustment.test.ts +324 -0
  71. package/src/modules/inventory/command/confirmInventoryAdjustment.ts +194 -0
  72. package/src/modules/inventory/command/confirmStockMovement.generated.ts +6 -0
  73. package/src/modules/inventory/command/confirmStockMovement.test.ts +126 -0
  74. package/src/modules/inventory/command/confirmStockMovement.ts +131 -0
  75. package/src/modules/inventory/command/createInventoryAdjustment.generated.ts +6 -0
  76. package/src/modules/inventory/command/createInventoryAdjustment.test.ts +298 -0
  77. package/src/modules/inventory/command/createInventoryAdjustment.ts +124 -0
  78. package/src/modules/inventory/command/createInventoryCount.generated.ts +6 -0
  79. package/src/modules/inventory/command/createInventoryCount.test.ts +157 -0
  80. package/src/modules/inventory/command/createInventoryCount.ts +72 -0
  81. package/src/modules/inventory/command/createLot.generated.ts +6 -0
  82. package/src/modules/inventory/command/createLot.test.ts +106 -0
  83. package/src/modules/inventory/command/createLot.ts +72 -0
  84. package/src/modules/inventory/command/createStockMovement.generated.ts +6 -0
  85. package/src/modules/inventory/command/createStockMovement.test.ts +342 -0
  86. package/src/modules/inventory/command/createStockMovement.ts +172 -0
  87. package/src/modules/inventory/command/createStorageLocation.generated.ts +6 -0
  88. package/src/modules/inventory/command/createStorageLocation.test.ts +246 -0
  89. package/src/modules/inventory/command/createStorageLocation.ts +126 -0
  90. package/src/modules/inventory/command/createValuationPolicy.generated.ts +6 -0
  91. package/src/modules/inventory/command/createValuationPolicy.test.ts +75 -0
  92. package/src/modules/inventory/command/createValuationPolicy.ts +52 -0
  93. package/src/modules/inventory/command/createWarehouse.generated.ts +6 -0
  94. package/src/modules/inventory/command/createWarehouse.test.ts +143 -0
  95. package/src/modules/inventory/command/createWarehouse.ts +76 -0
  96. package/src/modules/inventory/command/deactivateStorageLocation.generated.ts +6 -0
  97. package/src/modules/inventory/command/deactivateStorageLocation.test.ts +69 -0
  98. package/src/modules/inventory/command/deactivateStorageLocation.ts +51 -0
  99. package/src/modules/inventory/command/deactivateWarehouse.generated.ts +6 -0
  100. package/src/modules/inventory/command/deactivateWarehouse.test.ts +75 -0
  101. package/src/modules/inventory/command/deactivateWarehouse.ts +45 -0
  102. package/src/modules/inventory/command/executeStockMovement.generated.ts +6 -0
  103. package/src/modules/inventory/command/executeStockMovement.test.ts +502 -0
  104. package/src/modules/inventory/command/executeStockMovement.ts +303 -0
  105. package/src/modules/inventory/command/reactivateStorageLocation.generated.ts +6 -0
  106. package/src/modules/inventory/command/reactivateStorageLocation.test.ts +78 -0
  107. package/src/modules/inventory/command/reactivateStorageLocation.ts +63 -0
  108. package/src/modules/inventory/command/reactivateWarehouse.generated.ts +6 -0
  109. package/src/modules/inventory/command/reactivateWarehouse.test.ts +87 -0
  110. package/src/modules/inventory/command/reactivateWarehouse.ts +65 -0
  111. package/src/modules/inventory/command/recordCountLine.generated.ts +6 -0
  112. package/src/modules/inventory/command/recordCountLine.test.ts +211 -0
  113. package/src/modules/inventory/command/recordCountLine.ts +81 -0
  114. package/src/modules/inventory/command/rejectCountLine.generated.ts +6 -0
  115. package/src/modules/inventory/command/rejectCountLine.test.ts +66 -0
  116. package/src/modules/inventory/command/rejectCountLine.ts +50 -0
  117. package/src/modules/inventory/command/rejectInventoryAdjustment.generated.ts +6 -0
  118. package/src/modules/inventory/command/rejectInventoryAdjustment.test.ts +69 -0
  119. package/src/modules/inventory/command/rejectInventoryAdjustment.ts +50 -0
  120. package/src/modules/inventory/command/releaseReservation.generated.ts +6 -0
  121. package/src/modules/inventory/command/releaseReservation.test.ts +65 -0
  122. package/src/modules/inventory/command/releaseReservation.ts +50 -0
  123. package/src/modules/inventory/command/reserveStock.generated.ts +6 -0
  124. package/src/modules/inventory/command/reserveStock.test.ts +141 -0
  125. package/src/modules/inventory/command/reserveStock.ts +88 -0
  126. package/src/modules/inventory/command/reviseInventoryAdjustment.generated.ts +6 -0
  127. package/src/modules/inventory/command/reviseInventoryAdjustment.test.ts +68 -0
  128. package/src/modules/inventory/command/reviseInventoryAdjustment.ts +48 -0
  129. package/src/modules/inventory/command/startInventoryCount.generated.ts +6 -0
  130. package/src/modules/inventory/command/startInventoryCount.test.ts +100 -0
  131. package/src/modules/inventory/command/startInventoryCount.ts +90 -0
  132. package/src/modules/inventory/command/submitInventoryAdjustment.generated.ts +6 -0
  133. package/src/modules/inventory/command/submitInventoryAdjustment.test.ts +53 -0
  134. package/src/modules/inventory/command/submitInventoryAdjustment.ts +47 -0
  135. package/src/modules/inventory/command/updateLot.generated.ts +6 -0
  136. package/src/modules/inventory/command/updateLot.test.ts +88 -0
  137. package/src/modules/inventory/command/updateLot.ts +52 -0
  138. package/src/modules/inventory/command/updateStockMovement.generated.ts +6 -0
  139. package/src/modules/inventory/command/updateStockMovement.test.ts +250 -0
  140. package/src/modules/inventory/command/updateStockMovement.ts +164 -0
  141. package/src/modules/inventory/command/updateStorageLocation.generated.ts +6 -0
  142. package/src/modules/inventory/command/updateStorageLocation.test.ts +72 -0
  143. package/src/modules/inventory/command/updateStorageLocation.ts +77 -0
  144. package/src/modules/inventory/command/updateValuationPolicy.generated.ts +6 -0
  145. package/src/modules/inventory/command/updateValuationPolicy.test.ts +68 -0
  146. package/src/modules/inventory/command/updateValuationPolicy.ts +74 -0
  147. package/src/modules/inventory/command/updateWarehouse.generated.ts +6 -0
  148. package/src/modules/inventory/command/updateWarehouse.test.ts +88 -0
  149. package/src/modules/inventory/command/updateWarehouse.ts +64 -0
  150. package/src/modules/inventory/db/costLayer.ts +54 -0
  151. package/src/modules/inventory/db/inventoryAdjustment.ts +88 -0
  152. package/src/modules/inventory/db/inventoryCount.ts +58 -0
  153. package/src/modules/inventory/db/inventoryCountLine.ts +61 -0
  154. package/src/modules/inventory/db/itemValuation.ts +50 -0
  155. package/src/modules/inventory/db/lot.ts +51 -0
  156. package/src/modules/inventory/db/lotStockLevel.ts +48 -0
  157. package/src/modules/inventory/db/serialNumber.ts +53 -0
  158. package/src/modules/inventory/db/stockLevel.ts +51 -0
  159. package/src/modules/inventory/db/stockMoveLine.ts +78 -0
  160. package/src/modules/inventory/db/stockMovement.ts +48 -0
  161. package/src/modules/inventory/db/storageLocation.ts +56 -0
  162. package/src/modules/inventory/db/valuationPolicy.ts +33 -0
  163. package/src/modules/inventory/db/warehouse.ts +45 -0
  164. package/src/modules/inventory/docs/commands/ApproveCountLine.md +44 -0
  165. package/src/modules/inventory/docs/commands/ApproveInventoryAdjustment.md +37 -0
  166. package/src/modules/inventory/docs/commands/AssignSerialNumber.md +46 -0
  167. package/src/modules/inventory/docs/commands/CancelInventoryCount.md +49 -0
  168. package/src/modules/inventory/docs/commands/CancelStockMovement.md +44 -0
  169. package/src/modules/inventory/docs/commands/CompleteInventoryCount.md +47 -0
  170. package/src/modules/inventory/docs/commands/ConfirmInventoryAdjustment.md +72 -0
  171. package/src/modules/inventory/docs/commands/ConfirmStockMovement.md +43 -0
  172. package/src/modules/inventory/docs/commands/CreateInventoryAdjustment.md +75 -0
  173. package/src/modules/inventory/docs/commands/CreateInventoryCount.md +49 -0
  174. package/src/modules/inventory/docs/commands/CreateLot.md +40 -0
  175. package/src/modules/inventory/docs/commands/CreateStockMovement.md +76 -0
  176. package/src/modules/inventory/docs/commands/CreateStorageLocation.md +66 -0
  177. package/src/modules/inventory/docs/commands/CreateValuationPolicy.md +45 -0
  178. package/src/modules/inventory/docs/commands/CreateWarehouse.md +47 -0
  179. package/src/modules/inventory/docs/commands/DeactivateStorageLocation.md +39 -0
  180. package/src/modules/inventory/docs/commands/DeactivateWarehouse.md +38 -0
  181. package/src/modules/inventory/docs/commands/ExecuteStockMovement.md +82 -0
  182. package/src/modules/inventory/docs/commands/ReactivateStorageLocation.md +42 -0
  183. package/src/modules/inventory/docs/commands/ReactivateWarehouse.md +42 -0
  184. package/src/modules/inventory/docs/commands/RecordCountLine.md +52 -0
  185. package/src/modules/inventory/docs/commands/RejectCountLine.md +42 -0
  186. package/src/modules/inventory/docs/commands/RejectInventoryAdjustment.md +38 -0
  187. package/src/modules/inventory/docs/commands/ReleaseReservation.md +37 -0
  188. package/src/modules/inventory/docs/commands/ReserveStock.md +49 -0
  189. package/src/modules/inventory/docs/commands/ReviseInventoryAdjustment.md +38 -0
  190. package/src/modules/inventory/docs/commands/StartInventoryCount.md +47 -0
  191. package/src/modules/inventory/docs/commands/SubmitInventoryAdjustment.md +37 -0
  192. package/src/modules/inventory/docs/commands/UpdateLot.md +41 -0
  193. package/src/modules/inventory/docs/commands/UpdateStockMovement.md +45 -0
  194. package/src/modules/inventory/docs/commands/UpdateStorageLocation.md +41 -0
  195. package/src/modules/inventory/docs/commands/UpdateValuationPolicy.md +44 -0
  196. package/src/modules/inventory/docs/commands/UpdateWarehouse.md +42 -0
  197. package/src/modules/inventory/docs/features/inventory-adjustment.md +64 -0
  198. package/src/modules/inventory/docs/features/inventory-count.md +78 -0
  199. package/src/modules/inventory/docs/features/inventory-valuation.md +77 -0
  200. package/src/modules/inventory/docs/features/lot-and-batch-tracking.md +81 -0
  201. package/src/modules/inventory/docs/features/scrap-management.md +63 -0
  202. package/src/modules/inventory/docs/features/serial-number-tracking.md +68 -0
  203. package/src/modules/inventory/docs/features/stock-movement.md +72 -0
  204. package/src/modules/inventory/docs/features/stock-tracking.md +78 -0
  205. package/src/modules/inventory/docs/features/warehouse-management.md +97 -0
  206. package/src/modules/inventory/docs/models/CostLayer.md +37 -0
  207. package/src/modules/inventory/docs/models/InventoryAdjustment.md +69 -0
  208. package/src/modules/inventory/docs/models/InventoryCount.md +53 -0
  209. package/src/modules/inventory/docs/models/InventoryCountLine.md +53 -0
  210. package/src/modules/inventory/docs/models/ItemValuation.md +38 -0
  211. package/src/modules/inventory/docs/models/Lot.md +45 -0
  212. package/src/modules/inventory/docs/models/LotStockLevel.md +34 -0
  213. package/src/modules/inventory/docs/models/SerialNumber.md +53 -0
  214. package/src/modules/inventory/docs/models/StockLevel.md +41 -0
  215. package/src/modules/inventory/docs/models/StockMoveLine.md +44 -0
  216. package/src/modules/inventory/docs/models/StockMovement.md +52 -0
  217. package/src/modules/inventory/docs/models/StorageLocation.md +55 -0
  218. package/src/modules/inventory/docs/models/ValuationPolicy.md +38 -0
  219. package/src/modules/inventory/docs/models/Warehouse.md +50 -0
  220. package/src/modules/inventory/docs/queries/GetInventoryAdjustment.md +40 -0
  221. package/src/modules/inventory/docs/queries/GetInventoryCount.md +43 -0
  222. package/src/modules/inventory/docs/queries/GetItemValuation.md +42 -0
  223. package/src/modules/inventory/docs/queries/GetLot.md +42 -0
  224. package/src/modules/inventory/docs/queries/GetSerialNumber.md +43 -0
  225. package/src/modules/inventory/docs/queries/GetSerialNumberHistory.md +50 -0
  226. package/src/modules/inventory/docs/queries/GetStockLevel.md +42 -0
  227. package/src/modules/inventory/docs/queries/GetStockMovement.md +41 -0
  228. package/src/modules/inventory/docs/queries/GetStorageLocation.md +40 -0
  229. package/src/modules/inventory/docs/queries/GetValuationPolicy.md +38 -0
  230. package/src/modules/inventory/docs/queries/GetWarehouse.md +40 -0
  231. package/src/modules/inventory/docs/queries/GetWarehouseStockSummary.md +50 -0
  232. package/src/modules/inventory/docs/queries/ListCostLayers.md +49 -0
  233. package/src/modules/inventory/docs/queries/ListExpiringLots.md +51 -0
  234. package/src/modules/inventory/docs/queries/ListInventoryAdjustments.md +47 -0
  235. package/src/modules/inventory/docs/queries/ListInventoryCounts.md +57 -0
  236. package/src/modules/inventory/docs/queries/ListItemValuations.md +44 -0
  237. package/src/modules/inventory/docs/queries/ListLots.md +57 -0
  238. package/src/modules/inventory/docs/queries/ListSerialNumbers.md +44 -0
  239. package/src/modules/inventory/docs/queries/ListStockLevels.md +49 -0
  240. package/src/modules/inventory/docs/queries/ListStockMovements.md +47 -0
  241. package/src/modules/inventory/docs/queries/ListStorageLocations.md +47 -0
  242. package/src/modules/inventory/docs/queries/ListValuationPolicies.md +38 -0
  243. package/src/modules/inventory/docs/queries/ListWarehouses.md +42 -0
  244. package/src/modules/inventory/docs/queries/TraceLotBackward.md +46 -0
  245. package/src/modules/inventory/docs/queries/TraceLotForward.md +46 -0
  246. package/src/modules/inventory/executor/.gitkeep +0 -0
  247. package/src/modules/inventory/generated/.gitkeep +0 -0
  248. package/src/modules/inventory/generated/enums.ts +131 -0
  249. package/src/modules/inventory/generated/kysely-tailordb.ts +201 -0
  250. package/src/modules/inventory/index.ts +2 -0
  251. package/src/modules/inventory/lib/_db_deps.ts +17 -0
  252. package/src/modules/inventory/lib/errors.generated.ts +317 -0
  253. package/src/modules/inventory/lib/permissions.generated.ts +38 -0
  254. package/src/modules/inventory/lib/types.ts +92 -0
  255. package/src/modules/inventory/module.ts +202 -0
  256. package/src/modules/inventory/permissions.ts +3 -0
  257. package/src/modules/inventory/query/.gitkeep +0 -0
  258. package/src/modules/inventory/query/getInventoryAdjustment.generated.ts +5 -0
  259. package/src/modules/inventory/query/getInventoryAdjustment.test.ts +58 -0
  260. package/src/modules/inventory/query/getInventoryAdjustment.ts +16 -0
  261. package/src/modules/inventory/query/getInventoryCount.generated.ts +5 -0
  262. package/src/modules/inventory/query/getInventoryCount.test.ts +65 -0
  263. package/src/modules/inventory/query/getInventoryCount.ts +27 -0
  264. package/src/modules/inventory/query/getItemValuation.generated.ts +5 -0
  265. package/src/modules/inventory/query/getItemValuation.test.ts +72 -0
  266. package/src/modules/inventory/query/getItemValuation.ts +29 -0
  267. package/src/modules/inventory/query/getLot.generated.ts +5 -0
  268. package/src/modules/inventory/query/getLot.test.ts +62 -0
  269. package/src/modules/inventory/query/getLot.ts +28 -0
  270. package/src/modules/inventory/query/getSerialNumber.generated.ts +5 -0
  271. package/src/modules/inventory/query/getSerialNumber.test.ts +59 -0
  272. package/src/modules/inventory/query/getSerialNumber.ts +18 -0
  273. package/src/modules/inventory/query/getSerialNumberHistory.generated.ts +5 -0
  274. package/src/modules/inventory/query/getSerialNumberHistory.test.ts +80 -0
  275. package/src/modules/inventory/query/getSerialNumberHistory.ts +30 -0
  276. package/src/modules/inventory/query/getStockLevel.generated.ts +5 -0
  277. package/src/modules/inventory/query/getStockLevel.test.ts +70 -0
  278. package/src/modules/inventory/query/getStockLevel.ts +24 -0
  279. package/src/modules/inventory/query/getStockMovement.generated.ts +5 -0
  280. package/src/modules/inventory/query/getStockMovement.test.ts +62 -0
  281. package/src/modules/inventory/query/getStockMovement.ts +26 -0
  282. package/src/modules/inventory/query/getStorageLocation.generated.ts +5 -0
  283. package/src/modules/inventory/query/getStorageLocation.test.ts +54 -0
  284. package/src/modules/inventory/query/getStorageLocation.ts +26 -0
  285. package/src/modules/inventory/query/getValuationPolicy.generated.ts +5 -0
  286. package/src/modules/inventory/query/getValuationPolicy.test.ts +42 -0
  287. package/src/modules/inventory/query/getValuationPolicy.ts +16 -0
  288. package/src/modules/inventory/query/getWarehouse.generated.ts +5 -0
  289. package/src/modules/inventory/query/getWarehouse.test.ts +61 -0
  290. package/src/modules/inventory/query/getWarehouse.ts +26 -0
  291. package/src/modules/inventory/query/getWarehouseStockSummary.generated.ts +5 -0
  292. package/src/modules/inventory/query/getWarehouseStockSummary.test.ts +97 -0
  293. package/src/modules/inventory/query/getWarehouseStockSummary.ts +82 -0
  294. package/src/modules/inventory/query/listCostLayers.generated.ts +5 -0
  295. package/src/modules/inventory/query/listCostLayers.test.ts +58 -0
  296. package/src/modules/inventory/query/listCostLayers.ts +45 -0
  297. package/src/modules/inventory/query/listExpiringLots.generated.ts +5 -0
  298. package/src/modules/inventory/query/listExpiringLots.test.ts +70 -0
  299. package/src/modules/inventory/query/listExpiringLots.ts +74 -0
  300. package/src/modules/inventory/query/listInventoryAdjustments.generated.ts +5 -0
  301. package/src/modules/inventory/query/listInventoryAdjustments.test.ts +89 -0
  302. package/src/modules/inventory/query/listInventoryAdjustments.ts +59 -0
  303. package/src/modules/inventory/query/listInventoryCounts.generated.ts +5 -0
  304. package/src/modules/inventory/query/listInventoryCounts.test.ts +78 -0
  305. package/src/modules/inventory/query/listInventoryCounts.ts +55 -0
  306. package/src/modules/inventory/query/listItemValuations.generated.ts +5 -0
  307. package/src/modules/inventory/query/listItemValuations.test.ts +54 -0
  308. package/src/modules/inventory/query/listItemValuations.ts +39 -0
  309. package/src/modules/inventory/query/listLots.generated.ts +5 -0
  310. package/src/modules/inventory/query/listLots.test.ts +120 -0
  311. package/src/modules/inventory/query/listLots.ts +68 -0
  312. package/src/modules/inventory/query/listSerialNumbers.generated.ts +5 -0
  313. package/src/modules/inventory/query/listSerialNumbers.test.ts +58 -0
  314. package/src/modules/inventory/query/listSerialNumbers.ts +53 -0
  315. package/src/modules/inventory/query/listStockLevels.generated.ts +5 -0
  316. package/src/modules/inventory/query/listStockLevels.test.ts +73 -0
  317. package/src/modules/inventory/query/listStockLevels.ts +79 -0
  318. package/src/modules/inventory/query/listStockMovements.generated.ts +5 -0
  319. package/src/modules/inventory/query/listStockMovements.test.ts +98 -0
  320. package/src/modules/inventory/query/listStockMovements.ts +105 -0
  321. package/src/modules/inventory/query/listStorageLocations.generated.ts +5 -0
  322. package/src/modules/inventory/query/listStorageLocations.test.ts +70 -0
  323. package/src/modules/inventory/query/listStorageLocations.ts +53 -0
  324. package/src/modules/inventory/query/listValuationPolicies.generated.ts +5 -0
  325. package/src/modules/inventory/query/listValuationPolicies.test.ts +38 -0
  326. package/src/modules/inventory/query/listValuationPolicies.ts +39 -0
  327. package/src/modules/inventory/query/listWarehouses.generated.ts +5 -0
  328. package/src/modules/inventory/query/listWarehouses.test.ts +60 -0
  329. package/src/modules/inventory/query/listWarehouses.ts +39 -0
  330. package/src/modules/inventory/query/traceLotBackward.generated.ts +5 -0
  331. package/src/modules/inventory/query/traceLotBackward.test.ts +63 -0
  332. package/src/modules/inventory/query/traceLotBackward.ts +36 -0
  333. package/src/modules/inventory/query/traceLotForward.generated.ts +5 -0
  334. package/src/modules/inventory/query/traceLotForward.test.ts +63 -0
  335. package/src/modules/inventory/query/traceLotForward.ts +36 -0
  336. package/src/modules/inventory/tailor.config.ts +13 -0
  337. package/src/modules/inventory/tailor.d.ts +13 -0
  338. package/src/modules/inventory/testing/commandTestUtils.ts +29 -0
  339. package/src/modules/inventory/testing/fixtures.ts +412 -0
  340. package/src/modules/item-management/docs/models/{item.md → Item.md} +1 -1
  341. package/src/modules/primitives/seed/currencies.ts +22 -0
  342. package/src/modules/primitives/seed/exchangeRates.ts +22 -0
  343. package/src/modules/primitives/seed/index.ts +4 -0
  344. package/src/modules/primitives/seed/seed.test.ts +80 -0
  345. package/src/modules/primitives/seed/units.ts +62 -0
  346. package/src/modules/primitives/seed/uomCategories.ts +24 -0
  347. package/src/modules/purchase/README.md +63 -0
  348. package/src/modules/purchase/command/.gitkeep +0 -0
  349. package/src/modules/purchase/command/activatePurchasePaymentTerm.generated.ts +6 -0
  350. package/src/modules/purchase/command/activatePurchasePaymentTerm.test.ts +53 -0
  351. package/src/modules/purchase/command/activatePurchasePaymentTerm.ts +39 -0
  352. package/src/modules/purchase/command/activatePurchasePriceList.generated.ts +6 -0
  353. package/src/modules/purchase/command/activatePurchasePriceList.test.ts +39 -0
  354. package/src/modules/purchase/command/activatePurchasePriceList.ts +32 -0
  355. package/src/modules/purchase/command/activatePurchasePriceRule.generated.ts +6 -0
  356. package/src/modules/purchase/command/activatePurchasePriceRule.test.ts +133 -0
  357. package/src/modules/purchase/command/activatePurchasePriceRule.ts +75 -0
  358. package/src/modules/purchase/command/approvePurchaseOrder.generated.ts +6 -0
  359. package/src/modules/purchase/command/approvePurchaseOrder.test.ts +161 -0
  360. package/src/modules/purchase/command/approvePurchaseOrder.ts +89 -0
  361. package/src/modules/purchase/command/cancelGoodsReceipt.generated.ts +6 -0
  362. package/src/modules/purchase/command/cancelGoodsReceipt.test.ts +37 -0
  363. package/src/modules/purchase/command/cancelGoodsReceipt.ts +29 -0
  364. package/src/modules/purchase/command/cancelPurchaseBill.generated.ts +6 -0
  365. package/src/modules/purchase/command/cancelPurchaseBill.test.ts +101 -0
  366. package/src/modules/purchase/command/cancelPurchaseBill.ts +84 -0
  367. package/src/modules/purchase/command/cancelPurchaseOrder.generated.ts +6 -0
  368. package/src/modules/purchase/command/cancelPurchaseOrder.test.ts +119 -0
  369. package/src/modules/purchase/command/cancelPurchaseOrder.ts +65 -0
  370. package/src/modules/purchase/command/closePurchaseOrder.generated.ts +6 -0
  371. package/src/modules/purchase/command/closePurchaseOrder.test.ts +128 -0
  372. package/src/modules/purchase/command/closePurchaseOrder.ts +58 -0
  373. package/src/modules/purchase/command/createGoodsReceipt.generated.ts +6 -0
  374. package/src/modules/purchase/command/createGoodsReceipt.test.ts +233 -0
  375. package/src/modules/purchase/command/createGoodsReceipt.ts +93 -0
  376. package/src/modules/purchase/command/createPurchaseBill.generated.ts +6 -0
  377. package/src/modules/purchase/command/createPurchaseBill.test.ts +277 -0
  378. package/src/modules/purchase/command/createPurchaseBill.ts +107 -0
  379. package/src/modules/purchase/command/createPurchaseOrder.generated.ts +6 -0
  380. package/src/modules/purchase/command/createPurchaseOrder.test.ts +291 -0
  381. package/src/modules/purchase/command/createPurchaseOrder.ts +131 -0
  382. package/src/modules/purchase/command/createPurchasePaymentTerm.generated.ts +6 -0
  383. package/src/modules/purchase/command/createPurchasePaymentTerm.test.ts +140 -0
  384. package/src/modules/purchase/command/createPurchasePaymentTerm.ts +66 -0
  385. package/src/modules/purchase/command/createPurchasePriceList.generated.ts +6 -0
  386. package/src/modules/purchase/command/createPurchasePriceList.test.ts +108 -0
  387. package/src/modules/purchase/command/createPurchasePriceList.ts +63 -0
  388. package/src/modules/purchase/command/createPurchasePriceRule.generated.ts +6 -0
  389. package/src/modules/purchase/command/createPurchasePriceRule.test.ts +139 -0
  390. package/src/modules/purchase/command/createPurchasePriceRule.ts +95 -0
  391. package/src/modules/purchase/command/deactivatePurchasePaymentTerm.generated.ts +6 -0
  392. package/src/modules/purchase/command/deactivatePurchasePaymentTerm.test.ts +49 -0
  393. package/src/modules/purchase/command/deactivatePurchasePaymentTerm.ts +41 -0
  394. package/src/modules/purchase/command/deactivatePurchasePriceList.generated.ts +6 -0
  395. package/src/modules/purchase/command/deactivatePurchasePriceList.test.ts +50 -0
  396. package/src/modules/purchase/command/deactivatePurchasePriceList.ts +32 -0
  397. package/src/modules/purchase/command/deactivatePurchasePriceRule.generated.ts +6 -0
  398. package/src/modules/purchase/command/deactivatePurchasePriceRule.test.ts +50 -0
  399. package/src/modules/purchase/command/deactivatePurchasePriceRule.ts +32 -0
  400. package/src/modules/purchase/command/matchPurchaseBill.generated.ts +6 -0
  401. package/src/modules/purchase/command/matchPurchaseBill.test.ts +188 -0
  402. package/src/modules/purchase/command/matchPurchaseBill.ts +146 -0
  403. package/src/modules/purchase/command/postGoodsReceipt.generated.ts +6 -0
  404. package/src/modules/purchase/command/postGoodsReceipt.test.ts +210 -0
  405. package/src/modules/purchase/command/postGoodsReceipt.ts +143 -0
  406. package/src/modules/purchase/command/rejectPurchaseOrder.generated.ts +6 -0
  407. package/src/modules/purchase/command/rejectPurchaseOrder.test.ts +79 -0
  408. package/src/modules/purchase/command/rejectPurchaseOrder.ts +41 -0
  409. package/src/modules/purchase/command/releasePurchaseBill.generated.ts +6 -0
  410. package/src/modules/purchase/command/releasePurchaseBill.test.ts +94 -0
  411. package/src/modules/purchase/command/releasePurchaseBill.ts +111 -0
  412. package/src/modules/purchase/command/setSupplierDefaultPurchasePaymentTerm.generated.ts +6 -0
  413. package/src/modules/purchase/command/setSupplierDefaultPurchasePaymentTerm.test.ts +171 -0
  414. package/src/modules/purchase/command/setSupplierDefaultPurchasePaymentTerm.ts +90 -0
  415. package/src/modules/purchase/command/submitPurchaseOrder.generated.ts +6 -0
  416. package/src/modules/purchase/command/submitPurchaseOrder.test.ts +98 -0
  417. package/src/modules/purchase/command/submitPurchaseOrder.ts +73 -0
  418. package/src/modules/purchase/command/updateGoodsReceipt.generated.ts +6 -0
  419. package/src/modules/purchase/command/updateGoodsReceipt.test.ts +115 -0
  420. package/src/modules/purchase/command/updateGoodsReceipt.ts +73 -0
  421. package/src/modules/purchase/command/updatePurchaseBill.generated.ts +6 -0
  422. package/src/modules/purchase/command/updatePurchaseBill.test.ts +137 -0
  423. package/src/modules/purchase/command/updatePurchaseBill.ts +89 -0
  424. package/src/modules/purchase/command/updatePurchaseOrder.generated.ts +6 -0
  425. package/src/modules/purchase/command/updatePurchaseOrder.test.ts +195 -0
  426. package/src/modules/purchase/command/updatePurchaseOrder.ts +121 -0
  427. package/src/modules/purchase/command/updatePurchasePaymentTerm.generated.ts +6 -0
  428. package/src/modules/purchase/command/updatePurchasePaymentTerm.test.ts +154 -0
  429. package/src/modules/purchase/command/updatePurchasePaymentTerm.ts +73 -0
  430. package/src/modules/purchase/command/updatePurchasePriceList.generated.ts +6 -0
  431. package/src/modules/purchase/command/updatePurchasePriceList.test.ts +73 -0
  432. package/src/modules/purchase/command/updatePurchasePriceList.ts +55 -0
  433. package/src/modules/purchase/command/updatePurchasePriceRule.generated.ts +6 -0
  434. package/src/modules/purchase/command/updatePurchasePriceRule.test.ts +191 -0
  435. package/src/modules/purchase/command/updatePurchasePriceRule.ts +104 -0
  436. package/src/modules/purchase/db/.gitkeep +0 -0
  437. package/src/modules/purchase/db/goodsReceipt.ts +62 -0
  438. package/src/modules/purchase/db/purchaseBill.ts +74 -0
  439. package/src/modules/purchase/db/purchaseOrder.ts +100 -0
  440. package/src/modules/purchase/db/purchasePaymentTerm.ts +46 -0
  441. package/src/modules/purchase/db/purchasePriceList.ts +53 -0
  442. package/src/modules/purchase/db/purchasePriceRule.ts +74 -0
  443. package/src/modules/purchase/db/supplierProfile.ts +59 -0
  444. package/src/modules/purchase/docs/commands/ActivatePurchasePaymentTerm.md +39 -0
  445. package/src/modules/purchase/docs/commands/ActivatePurchasePriceList.md +37 -0
  446. package/src/modules/purchase/docs/commands/ActivatePurchasePriceRule.md +47 -0
  447. package/src/modules/purchase/docs/commands/ApprovePurchaseOrder.md +55 -0
  448. package/src/modules/purchase/docs/commands/CancelGoodsReceipt.md +39 -0
  449. package/src/modules/purchase/docs/commands/CancelPurchaseBill.md +49 -0
  450. package/src/modules/purchase/docs/commands/CancelPurchaseOrder.md +47 -0
  451. package/src/modules/purchase/docs/commands/ClosePurchaseOrder.md +49 -0
  452. package/src/modules/purchase/docs/commands/CreateGoodsReceipt.md +54 -0
  453. package/src/modules/purchase/docs/commands/CreatePurchaseBill.md +59 -0
  454. package/src/modules/purchase/docs/commands/CreatePurchaseOrder.md +66 -0
  455. package/src/modules/purchase/docs/commands/CreatePurchasePaymentTerm.md +52 -0
  456. package/src/modules/purchase/docs/commands/CreatePurchasePriceList.md +48 -0
  457. package/src/modules/purchase/docs/commands/CreatePurchasePriceRule.md +62 -0
  458. package/src/modules/purchase/docs/commands/DeactivatePurchasePaymentTerm.md +42 -0
  459. package/src/modules/purchase/docs/commands/DeactivatePurchasePriceList.md +39 -0
  460. package/src/modules/purchase/docs/commands/DeactivatePurchasePriceRule.md +39 -0
  461. package/src/modules/purchase/docs/commands/MatchPurchaseBill.md +63 -0
  462. package/src/modules/purchase/docs/commands/PostGoodsReceipt.md +61 -0
  463. package/src/modules/purchase/docs/commands/RejectPurchaseOrder.md +44 -0
  464. package/src/modules/purchase/docs/commands/ReleasePurchaseBill.md +48 -0
  465. package/src/modules/purchase/docs/commands/SetSupplierDefaultPurchasePaymentTerm.md +50 -0
  466. package/src/modules/purchase/docs/commands/SubmitPurchaseOrder.md +51 -0
  467. package/src/modules/purchase/docs/commands/UpdateGoodsReceipt.md +48 -0
  468. package/src/modules/purchase/docs/commands/UpdatePurchaseBill.md +51 -0
  469. package/src/modules/purchase/docs/commands/UpdatePurchaseOrder.md +59 -0
  470. package/src/modules/purchase/docs/commands/UpdatePurchasePaymentTerm.md +51 -0
  471. package/src/modules/purchase/docs/commands/UpdatePurchasePriceList.md +43 -0
  472. package/src/modules/purchase/docs/commands/UpdatePurchasePriceRule.md +60 -0
  473. package/src/modules/purchase/docs/features/goods-receipt-matching.md +71 -0
  474. package/src/modules/purchase/docs/features/purchase-order-lifecycle.md +87 -0
  475. package/src/modules/purchase/docs/features/purchase-payment-terms.md +67 -0
  476. package/src/modules/purchase/docs/features/supplier-bill-matching.md +79 -0
  477. package/src/modules/purchase/docs/features/supplier-purchase-pricing.md +72 -0
  478. package/src/modules/purchase/docs/models/GoodsReceipt.md +58 -0
  479. package/src/modules/purchase/docs/models/PurchaseBill.md +68 -0
  480. package/src/modules/purchase/docs/models/PurchaseOrder.md +88 -0
  481. package/src/modules/purchase/docs/models/PurchasePaymentTerm.md +59 -0
  482. package/src/modules/purchase/docs/models/PurchasePriceList.md +53 -0
  483. package/src/modules/purchase/docs/models/PurchasePriceRule.md +58 -0
  484. package/src/modules/purchase/docs/models/SupplierProfile.md +37 -0
  485. package/src/modules/purchase/docs/queries/CalculatePurchaseBillDueSchedule.md +47 -0
  486. package/src/modules/purchase/docs/queries/CalculatePurchasePrice.md +53 -0
  487. package/src/modules/purchase/docs/queries/GetGoodsReceipt.md +36 -0
  488. package/src/modules/purchase/docs/queries/GetPurchaseBill.md +41 -0
  489. package/src/modules/purchase/docs/queries/GetPurchaseOrder.md +42 -0
  490. package/src/modules/purchase/docs/queries/GetPurchasePaymentTerm.md +36 -0
  491. package/src/modules/purchase/docs/queries/GetPurchasePriceList.md +36 -0
  492. package/src/modules/purchase/docs/queries/GetSupplierProfile.md +36 -0
  493. package/src/modules/purchase/executor/.gitkeep +0 -0
  494. package/src/modules/purchase/generated/.gitkeep +0 -0
  495. package/src/modules/purchase/generated/enums.ts +63 -0
  496. package/src/modules/purchase/generated/kysely-tailordb.ts +186 -0
  497. package/src/modules/purchase/index.ts +2 -0
  498. package/src/modules/purchase/lib/_db_deps.ts +77 -0
  499. package/src/modules/purchase/lib/domain.ts +467 -0
  500. package/src/modules/purchase/lib/errors.generated.ts +367 -0
  501. package/src/modules/purchase/lib/permissions.generated.ts +34 -0
  502. package/src/modules/purchase/lib/types.ts +65 -0
  503. package/src/modules/purchase/module.ts +218 -0
  504. package/src/modules/purchase/permissions.ts +1 -0
  505. package/src/modules/purchase/query/.gitkeep +0 -0
  506. package/src/modules/purchase/query/calculatePurchaseBillDueSchedule.generated.ts +5 -0
  507. package/src/modules/purchase/query/calculatePurchaseBillDueSchedule.test.ts +183 -0
  508. package/src/modules/purchase/query/calculatePurchaseBillDueSchedule.ts +41 -0
  509. package/src/modules/purchase/query/calculatePurchasePrice.generated.ts +5 -0
  510. package/src/modules/purchase/query/calculatePurchasePrice.test.ts +143 -0
  511. package/src/modules/purchase/query/calculatePurchasePrice.ts +113 -0
  512. package/src/modules/purchase/query/getGoodsReceipt.generated.ts +5 -0
  513. package/src/modules/purchase/query/getGoodsReceipt.test.ts +42 -0
  514. package/src/modules/purchase/query/getGoodsReceipt.ts +27 -0
  515. package/src/modules/purchase/query/getPurchaseBill.generated.ts +5 -0
  516. package/src/modules/purchase/query/getPurchaseBill.test.ts +69 -0
  517. package/src/modules/purchase/query/getPurchaseBill.ts +35 -0
  518. package/src/modules/purchase/query/getPurchaseOrder.generated.ts +5 -0
  519. package/src/modules/purchase/query/getPurchaseOrder.test.ts +65 -0
  520. package/src/modules/purchase/query/getPurchaseOrder.ts +33 -0
  521. package/src/modules/purchase/query/getPurchasePaymentTerm.generated.ts +5 -0
  522. package/src/modules/purchase/query/getPurchasePaymentTerm.test.ts +44 -0
  523. package/src/modules/purchase/query/getPurchasePaymentTerm.ts +30 -0
  524. package/src/modules/purchase/query/getPurchasePriceList.generated.ts +5 -0
  525. package/src/modules/purchase/query/getPurchasePriceList.test.ts +48 -0
  526. package/src/modules/purchase/query/getPurchasePriceList.ts +30 -0
  527. package/src/modules/purchase/query/getSupplierProfile.generated.ts +5 -0
  528. package/src/modules/purchase/query/getSupplierProfile.test.ts +50 -0
  529. package/src/modules/purchase/query/getSupplierProfile.ts +18 -0
  530. package/src/modules/purchase/tailor.config.ts +13 -0
  531. package/src/modules/purchase/tailor.d.ts +13 -0
  532. package/src/modules/purchase/testing/commandTestUtils.ts +35 -0
  533. package/src/modules/purchase/testing/fixtures.ts +317 -0
  534. package/src/modules/sales/README.md +69 -0
  535. package/src/modules/sales/command/.gitkeep +0 -0
  536. package/src/modules/sales/command/activateChannel.generated.ts +6 -0
  537. package/src/modules/sales/command/activateChannel.test.ts +70 -0
  538. package/src/modules/sales/command/activateChannel.ts +48 -0
  539. package/src/modules/sales/command/activateListing.generated.ts +6 -0
  540. package/src/modules/sales/command/activateListing.test.ts +87 -0
  541. package/src/modules/sales/command/activateListing.ts +49 -0
  542. package/src/modules/sales/command/activateSalesPaymentTerm.generated.ts +6 -0
  543. package/src/modules/sales/command/activateSalesPaymentTerm.test.ts +58 -0
  544. package/src/modules/sales/command/activateSalesPaymentTerm.ts +50 -0
  545. package/src/modules/sales/command/activateSalesPriceList.generated.ts +6 -0
  546. package/src/modules/sales/command/activateSalesPriceList.test.ts +55 -0
  547. package/src/modules/sales/command/activateSalesPriceList.ts +46 -0
  548. package/src/modules/sales/command/activateSalesPriceRule.generated.ts +6 -0
  549. package/src/modules/sales/command/activateSalesPriceRule.test.ts +83 -0
  550. package/src/modules/sales/command/activateSalesPriceRule.ts +58 -0
  551. package/src/modules/sales/command/cancelChannelOrder.generated.ts +6 -0
  552. package/src/modules/sales/command/cancelChannelOrder.test.ts +47 -0
  553. package/src/modules/sales/command/cancelChannelOrder.ts +30 -0
  554. package/src/modules/sales/command/cancelSalesInvoice.generated.ts +6 -0
  555. package/src/modules/sales/command/cancelSalesInvoice.test.ts +47 -0
  556. package/src/modules/sales/command/cancelSalesInvoice.ts +37 -0
  557. package/src/modules/sales/command/cancelSalesOrder.generated.ts +6 -0
  558. package/src/modules/sales/command/cancelSalesOrder.test.ts +70 -0
  559. package/src/modules/sales/command/cancelSalesOrder.ts +48 -0
  560. package/src/modules/sales/command/cancelSyncJob.generated.ts +6 -0
  561. package/src/modules/sales/command/cancelSyncJob.test.ts +58 -0
  562. package/src/modules/sales/command/cancelSyncJob.ts +30 -0
  563. package/src/modules/sales/command/closeSalesOrder.generated.ts +6 -0
  564. package/src/modules/sales/command/closeSalesOrder.test.ts +41 -0
  565. package/src/modules/sales/command/closeSalesOrder.ts +51 -0
  566. package/src/modules/sales/command/confirmSalesOrder.generated.ts +6 -0
  567. package/src/modules/sales/command/confirmSalesOrder.test.ts +68 -0
  568. package/src/modules/sales/command/confirmSalesOrder.ts +67 -0
  569. package/src/modules/sales/command/convertChannelOrder.generated.ts +6 -0
  570. package/src/modules/sales/command/convertChannelOrder.test.ts +118 -0
  571. package/src/modules/sales/command/convertChannelOrder.ts +151 -0
  572. package/src/modules/sales/command/createChannel.generated.ts +6 -0
  573. package/src/modules/sales/command/createChannel.test.ts +100 -0
  574. package/src/modules/sales/command/createChannel.ts +58 -0
  575. package/src/modules/sales/command/createListing.generated.ts +6 -0
  576. package/src/modules/sales/command/createListing.test.ts +88 -0
  577. package/src/modules/sales/command/createListing.ts +76 -0
  578. package/src/modules/sales/command/createSalesCreditNote.generated.ts +6 -0
  579. package/src/modules/sales/command/createSalesCreditNote.test.ts +56 -0
  580. package/src/modules/sales/command/createSalesCreditNote.ts +75 -0
  581. package/src/modules/sales/command/createSalesInvoice.generated.ts +6 -0
  582. package/src/modules/sales/command/createSalesInvoice.test.ts +85 -0
  583. package/src/modules/sales/command/createSalesInvoice.ts +94 -0
  584. package/src/modules/sales/command/createSalesOrder.generated.ts +6 -0
  585. package/src/modules/sales/command/createSalesOrder.test.ts +134 -0
  586. package/src/modules/sales/command/createSalesOrder.ts +140 -0
  587. package/src/modules/sales/command/createSalesPaymentTerm.generated.ts +6 -0
  588. package/src/modules/sales/command/createSalesPaymentTerm.test.ts +59 -0
  589. package/src/modules/sales/command/createSalesPaymentTerm.ts +50 -0
  590. package/src/modules/sales/command/createSalesPriceList.generated.ts +6 -0
  591. package/src/modules/sales/command/createSalesPriceList.test.ts +67 -0
  592. package/src/modules/sales/command/createSalesPriceList.ts +45 -0
  593. package/src/modules/sales/command/createSalesPriceRule.generated.ts +6 -0
  594. package/src/modules/sales/command/createSalesPriceRule.test.ts +137 -0
  595. package/src/modules/sales/command/createSalesPriceRule.ts +66 -0
  596. package/src/modules/sales/command/createShipment.generated.ts +6 -0
  597. package/src/modules/sales/command/createShipment.test.ts +75 -0
  598. package/src/modules/sales/command/createShipment.ts +86 -0
  599. package/src/modules/sales/command/deactivateChannel.generated.ts +6 -0
  600. package/src/modules/sales/command/deactivateChannel.test.ts +29 -0
  601. package/src/modules/sales/command/deactivateChannel.ts +30 -0
  602. package/src/modules/sales/command/deactivateSalesPaymentTerm.generated.ts +6 -0
  603. package/src/modules/sales/command/deactivateSalesPaymentTerm.test.ts +29 -0
  604. package/src/modules/sales/command/deactivateSalesPaymentTerm.ts +37 -0
  605. package/src/modules/sales/command/deactivateSalesPriceList.generated.ts +6 -0
  606. package/src/modules/sales/command/deactivateSalesPriceList.test.ts +33 -0
  607. package/src/modules/sales/command/deactivateSalesPriceList.ts +37 -0
  608. package/src/modules/sales/command/deactivateSalesPriceRule.generated.ts +6 -0
  609. package/src/modules/sales/command/deactivateSalesPriceRule.test.ts +33 -0
  610. package/src/modules/sales/command/deactivateSalesPriceRule.ts +37 -0
  611. package/src/modules/sales/command/issueSalesCreditNote.generated.ts +6 -0
  612. package/src/modules/sales/command/issueSalesCreditNote.test.ts +62 -0
  613. package/src/modules/sales/command/issueSalesCreditNote.ts +71 -0
  614. package/src/modules/sales/command/issueSalesInvoice.generated.ts +6 -0
  615. package/src/modules/sales/command/issueSalesInvoice.test.ts +88 -0
  616. package/src/modules/sales/command/issueSalesInvoice.ts +115 -0
  617. package/src/modules/sales/command/markChannelOrderException.generated.ts +6 -0
  618. package/src/modules/sales/command/markChannelOrderException.test.ts +59 -0
  619. package/src/modules/sales/command/markChannelOrderException.ts +49 -0
  620. package/src/modules/sales/command/pauseListing.generated.ts +6 -0
  621. package/src/modules/sales/command/pauseListing.test.ts +40 -0
  622. package/src/modules/sales/command/pauseListing.ts +30 -0
  623. package/src/modules/sales/command/placeSalesOrderOnCreditHold.generated.ts +6 -0
  624. package/src/modules/sales/command/placeSalesOrderOnCreditHold.test.ts +74 -0
  625. package/src/modules/sales/command/placeSalesOrderOnCreditHold.ts +46 -0
  626. package/src/modules/sales/command/postShipment.generated.ts +6 -0
  627. package/src/modules/sales/command/postShipment.test.ts +97 -0
  628. package/src/modules/sales/command/postShipment.ts +89 -0
  629. package/src/modules/sales/command/recordChannelOrder.generated.ts +6 -0
  630. package/src/modules/sales/command/recordChannelOrder.test.ts +124 -0
  631. package/src/modules/sales/command/recordChannelOrder.ts +93 -0
  632. package/src/modules/sales/command/rejectSalesOrder.generated.ts +6 -0
  633. package/src/modules/sales/command/rejectSalesOrder.test.ts +78 -0
  634. package/src/modules/sales/command/rejectSalesOrder.ts +42 -0
  635. package/src/modules/sales/command/releaseSalesOrderCreditHold.generated.ts +6 -0
  636. package/src/modules/sales/command/releaseSalesOrderCreditHold.test.ts +50 -0
  637. package/src/modules/sales/command/releaseSalesOrderCreditHold.ts +51 -0
  638. package/src/modules/sales/command/retireListing.generated.ts +6 -0
  639. package/src/modules/sales/command/retireListing.test.ts +42 -0
  640. package/src/modules/sales/command/retireListing.ts +30 -0
  641. package/src/modules/sales/command/retrySyncJob.generated.ts +6 -0
  642. package/src/modules/sales/command/retrySyncJob.test.ts +54 -0
  643. package/src/modules/sales/command/retrySyncJob.ts +44 -0
  644. package/src/modules/sales/command/sendSalesInvoice.generated.ts +6 -0
  645. package/src/modules/sales/command/sendSalesInvoice.test.ts +50 -0
  646. package/src/modules/sales/command/sendSalesInvoice.ts +43 -0
  647. package/src/modules/sales/command/startSyncJob.generated.ts +6 -0
  648. package/src/modules/sales/command/startSyncJob.test.ts +65 -0
  649. package/src/modules/sales/command/startSyncJob.ts +54 -0
  650. package/src/modules/sales/command/submitSalesOrder.generated.ts +6 -0
  651. package/src/modules/sales/command/submitSalesOrder.test.ts +58 -0
  652. package/src/modules/sales/command/submitSalesOrder.ts +49 -0
  653. package/src/modules/sales/command/updateChannel.generated.ts +6 -0
  654. package/src/modules/sales/command/updateChannel.test.ts +71 -0
  655. package/src/modules/sales/command/updateChannel.ts +68 -0
  656. package/src/modules/sales/command/updateListing.generated.ts +6 -0
  657. package/src/modules/sales/command/updateListing.test.ts +56 -0
  658. package/src/modules/sales/command/updateListing.ts +60 -0
  659. package/src/modules/sales/command/updateSalesCreditNote.generated.ts +6 -0
  660. package/src/modules/sales/command/updateSalesCreditNote.test.ts +68 -0
  661. package/src/modules/sales/command/updateSalesCreditNote.ts +68 -0
  662. package/src/modules/sales/command/updateSalesInvoice.generated.ts +6 -0
  663. package/src/modules/sales/command/updateSalesInvoice.test.ts +73 -0
  664. package/src/modules/sales/command/updateSalesInvoice.ts +80 -0
  665. package/src/modules/sales/command/updateSalesOrder.generated.ts +6 -0
  666. package/src/modules/sales/command/updateSalesOrder.test.ts +93 -0
  667. package/src/modules/sales/command/updateSalesOrder.ts +121 -0
  668. package/src/modules/sales/command/updateSalesPaymentTerm.generated.ts +6 -0
  669. package/src/modules/sales/command/updateSalesPaymentTerm.test.ts +66 -0
  670. package/src/modules/sales/command/updateSalesPaymentTerm.ts +59 -0
  671. package/src/modules/sales/command/updateSalesPriceList.generated.ts +6 -0
  672. package/src/modules/sales/command/updateSalesPriceList.test.ts +71 -0
  673. package/src/modules/sales/command/updateSalesPriceList.ts +52 -0
  674. package/src/modules/sales/command/updateSalesPriceRule.generated.ts +6 -0
  675. package/src/modules/sales/command/updateSalesPriceRule.test.ts +95 -0
  676. package/src/modules/sales/command/updateSalesPriceRule.ts +81 -0
  677. package/src/modules/sales/command/updateShipment.generated.ts +6 -0
  678. package/src/modules/sales/command/updateShipment.test.ts +78 -0
  679. package/src/modules/sales/command/updateShipment.ts +84 -0
  680. package/src/modules/sales/db/.gitkeep +0 -0
  681. package/src/modules/sales/db/channel.ts +43 -0
  682. package/src/modules/sales/db/channelOrder.ts +109 -0
  683. package/src/modules/sales/db/channelOrderLine.ts +84 -0
  684. package/src/modules/sales/db/listing.ts +81 -0
  685. package/src/modules/sales/db/salesCreditNote.ts +63 -0
  686. package/src/modules/sales/db/salesCreditNoteLine.ts +49 -0
  687. package/src/modules/sales/db/salesInvoice.ts +95 -0
  688. package/src/modules/sales/db/salesInvoiceLine.ts +64 -0
  689. package/src/modules/sales/db/salesOrder.ts +103 -0
  690. package/src/modules/sales/db/salesOrderLine.ts +82 -0
  691. package/src/modules/sales/db/salesPaymentTerm.ts +46 -0
  692. package/src/modules/sales/db/salesPriceList.ts +61 -0
  693. package/src/modules/sales/db/salesPriceRule.ts +96 -0
  694. package/src/modules/sales/db/shipment.ts +78 -0
  695. package/src/modules/sales/db/shipmentLine.ts +58 -0
  696. package/src/modules/sales/db/syncJob.ts +70 -0
  697. package/src/modules/sales/docs/commands/ActivateChannel.md +42 -0
  698. package/src/modules/sales/docs/commands/ActivateListing.md +46 -0
  699. package/src/modules/sales/docs/commands/ActivateSalesPaymentTerm.md +41 -0
  700. package/src/modules/sales/docs/commands/ActivateSalesPriceList.md +39 -0
  701. package/src/modules/sales/docs/commands/ActivateSalesPriceRule.md +48 -0
  702. package/src/modules/sales/docs/commands/CancelChannelOrder.md +37 -0
  703. package/src/modules/sales/docs/commands/CancelSalesInvoice.md +39 -0
  704. package/src/modules/sales/docs/commands/CancelSalesOrder.md +40 -0
  705. package/src/modules/sales/docs/commands/CancelSyncJob.md +36 -0
  706. package/src/modules/sales/docs/commands/CloseSalesOrder.md +39 -0
  707. package/src/modules/sales/docs/commands/ConfirmSalesOrder.md +43 -0
  708. package/src/modules/sales/docs/commands/ConvertChannelOrder.md +44 -0
  709. package/src/modules/sales/docs/commands/CreateChannel.md +40 -0
  710. package/src/modules/sales/docs/commands/CreateListing.md +40 -0
  711. package/src/modules/sales/docs/commands/CreateSalesCreditNote.md +37 -0
  712. package/src/modules/sales/docs/commands/CreateSalesInvoice.md +39 -0
  713. package/src/modules/sales/docs/commands/CreateSalesOrder.md +51 -0
  714. package/src/modules/sales/docs/commands/CreateSalesPaymentTerm.md +38 -0
  715. package/src/modules/sales/docs/commands/CreateSalesPriceList.md +37 -0
  716. package/src/modules/sales/docs/commands/CreateSalesPriceRule.md +46 -0
  717. package/src/modules/sales/docs/commands/CreateShipment.md +38 -0
  718. package/src/modules/sales/docs/commands/DeactivateChannel.md +35 -0
  719. package/src/modules/sales/docs/commands/DeactivateSalesPaymentTerm.md +35 -0
  720. package/src/modules/sales/docs/commands/DeactivateSalesPriceList.md +35 -0
  721. package/src/modules/sales/docs/commands/DeactivateSalesPriceRule.md +35 -0
  722. package/src/modules/sales/docs/commands/IssueSalesCreditNote.md +38 -0
  723. package/src/modules/sales/docs/commands/IssueSalesInvoice.md +43 -0
  724. package/src/modules/sales/docs/commands/MarkChannelOrderException.md +37 -0
  725. package/src/modules/sales/docs/commands/PauseListing.md +36 -0
  726. package/src/modules/sales/docs/commands/PlaceSalesOrderOnCreditHold.md +41 -0
  727. package/src/modules/sales/docs/commands/PostShipment.md +41 -0
  728. package/src/modules/sales/docs/commands/RecordChannelOrder.md +45 -0
  729. package/src/modules/sales/docs/commands/RejectSalesOrder.md +41 -0
  730. package/src/modules/sales/docs/commands/ReleaseSalesOrderCreditHold.md +36 -0
  731. package/src/modules/sales/docs/commands/RetireListing.md +36 -0
  732. package/src/modules/sales/docs/commands/RetrySyncJob.md +39 -0
  733. package/src/modules/sales/docs/commands/SendSalesInvoice.md +38 -0
  734. package/src/modules/sales/docs/commands/StartSyncJob.md +39 -0
  735. package/src/modules/sales/docs/commands/SubmitSalesOrder.md +43 -0
  736. package/src/modules/sales/docs/commands/UpdateChannel.md +43 -0
  737. package/src/modules/sales/docs/commands/UpdateListing.md +38 -0
  738. package/src/modules/sales/docs/commands/UpdateSalesCreditNote.md +38 -0
  739. package/src/modules/sales/docs/commands/UpdateSalesInvoice.md +38 -0
  740. package/src/modules/sales/docs/commands/UpdateSalesOrder.md +45 -0
  741. package/src/modules/sales/docs/commands/UpdateSalesPaymentTerm.md +41 -0
  742. package/src/modules/sales/docs/commands/UpdateSalesPriceList.md +40 -0
  743. package/src/modules/sales/docs/commands/UpdateSalesPriceRule.md +49 -0
  744. package/src/modules/sales/docs/commands/UpdateShipment.md +38 -0
  745. package/src/modules/sales/docs/commands/bin/rm.md +52 -0
  746. package/src/modules/sales/docs/commands/opt/homebrew/bin/codex.md +52 -0
  747. package/src/modules/sales/docs/commands/opt/homebrew/bin/ps2ps2.md +52 -0
  748. package/src/modules/sales/docs/commands/opt/homebrew/bin/rg.md +52 -0
  749. package/src/modules/sales/docs/commands/opt/homebrew/bin/sha384sum.md +52 -0
  750. package/src/modules/sales/docs/commands/opt/homebrew/opt/libpq/bin/pg_combinebackup.md +52 -0
  751. package/src/modules/sales/docs/commands/sbin/mount_msdos.md +52 -0
  752. package/src/modules/sales/docs/commands/sbin/mount_nfs.md +52 -0
  753. package/src/modules/sales/docs/commands/usr/bin/cupstestppd.md +52 -0
  754. package/src/modules/sales/docs/commands/usr/bin/enc2xs.md +52 -0
  755. package/src/modules/sales/docs/commands/usr/bin/hash.md +52 -0
  756. package/src/modules/sales/docs/commands/usr/bin/jarsigner.md +52 -0
  757. package/src/modules/sales/docs/commands/usr/bin/mpsgraphtool.md +52 -0
  758. package/src/modules/sales/docs/commands/usr/bin/nano.md +52 -0
  759. package/src/modules/sales/docs/commands/usr/bin/pod2html5.34.md +52 -0
  760. package/src/modules/sales/docs/commands/usr/bin/ri.md +52 -0
  761. package/src/modules/sales/docs/commands/usr/bin/rs.md +52 -0
  762. package/src/modules/sales/docs/commands/usr/bin/trustcachectl.md +52 -0
  763. package/src/modules/sales/docs/commands/usr/sbin/htpasswd.md +52 -0
  764. package/src/modules/sales/docs/commands/usr/sbin/lpadmin.md +52 -0
  765. package/src/modules/sales/docs/commands/usr/sbin/setkey.md +52 -0
  766. package/src/modules/sales/docs/features/channel-listing-management.md +68 -0
  767. package/src/modules/sales/docs/features/channel-order-sync.md +78 -0
  768. package/src/modules/sales/docs/features/customer-invoicing.md +89 -0
  769. package/src/modules/sales/docs/features/customer-sales-pricing.md +72 -0
  770. package/src/modules/sales/docs/features/sales-order-lifecycle.md +96 -0
  771. package/src/modules/sales/docs/features/sales-payment-terms.md +67 -0
  772. package/src/modules/sales/docs/features/shipment-fulfillment.md +71 -0
  773. package/src/modules/sales/docs/models/Channel.md +48 -0
  774. package/src/modules/sales/docs/models/ChannelOrder.md +56 -0
  775. package/src/modules/sales/docs/models/ChannelOrderLine.md +39 -0
  776. package/src/modules/sales/docs/models/Listing.md +56 -0
  777. package/src/modules/sales/docs/models/SalesCreditNote.md +47 -0
  778. package/src/modules/sales/docs/models/SalesCreditNoteLine.md +37 -0
  779. package/src/modules/sales/docs/models/SalesInvoice.md +55 -0
  780. package/src/modules/sales/docs/models/SalesInvoiceLine.md +39 -0
  781. package/src/modules/sales/docs/models/SalesOrder.md +79 -0
  782. package/src/modules/sales/docs/models/SalesOrderLine.md +42 -0
  783. package/src/modules/sales/docs/models/SalesPaymentTerm.md +53 -0
  784. package/src/modules/sales/docs/models/SalesPriceList.md +50 -0
  785. package/src/modules/sales/docs/models/SalesPriceRule.md +51 -0
  786. package/src/modules/sales/docs/models/Shipment.md +49 -0
  787. package/src/modules/sales/docs/models/ShipmentLine.md +38 -0
  788. package/src/modules/sales/docs/models/SyncJob.md +53 -0
  789. package/src/modules/sales/docs/queries/CalculateInvoiceDueSchedule.md +37 -0
  790. package/src/modules/sales/docs/queries/GetApplicableSalesPrice.md +38 -0
  791. package/src/modules/sales/docs/queries/GetChannel.md +34 -0
  792. package/src/modules/sales/docs/queries/GetChannelOrder.md +34 -0
  793. package/src/modules/sales/docs/queries/GetListing.md +34 -0
  794. package/src/modules/sales/docs/queries/GetListingByExternalIdentifier.md +35 -0
  795. package/src/modules/sales/docs/queries/GetSalesCreditNote.md +34 -0
  796. package/src/modules/sales/docs/queries/GetSalesInvoice.md +34 -0
  797. package/src/modules/sales/docs/queries/GetSalesOrder.md +36 -0
  798. package/src/modules/sales/docs/queries/GetSalesPaymentTerm.md +34 -0
  799. package/src/modules/sales/docs/queries/GetSalesPriceList.md +34 -0
  800. package/src/modules/sales/docs/queries/GetShipment.md +34 -0
  801. package/src/modules/sales/docs/queries/GetSyncJob.md +34 -0
  802. package/src/modules/sales/docs/queries/ListChannelOrdersByStatus.md +34 -0
  803. package/src/modules/sales/docs/queries/ListChannels.md +33 -0
  804. package/src/modules/sales/docs/queries/ListListingsByChannel.md +33 -0
  805. package/src/modules/sales/docs/queries/ListSalesCreditNotesByInvoice.md +33 -0
  806. package/src/modules/sales/docs/queries/ListSalesInvoicesBySalesOrder.md +33 -0
  807. package/src/modules/sales/docs/queries/ListSalesOrders.md +36 -0
  808. package/src/modules/sales/docs/queries/ListSalesPaymentTerms.md +33 -0
  809. package/src/modules/sales/docs/queries/ListSalesPriceLists.md +33 -0
  810. package/src/modules/sales/docs/queries/ListSalesPriceRulesByPriceList.md +33 -0
  811. package/src/modules/sales/docs/queries/ListShipmentsBySalesOrder.md +33 -0
  812. package/src/modules/sales/docs/queries/ListSyncJobs.md +34 -0
  813. package/src/modules/sales/executor/.gitkeep +0 -0
  814. package/src/modules/sales/generated/.gitkeep +0 -0
  815. package/src/modules/sales/generated/enums.ts +119 -0
  816. package/src/modules/sales/generated/kysely-tailordb.ts +332 -0
  817. package/src/modules/sales/index.ts +2 -0
  818. package/src/modules/sales/lib/_db_deps.ts +67 -0
  819. package/src/modules/sales/lib/domain.ts +354 -0
  820. package/src/modules/sales/lib/errors.generated.ts +417 -0
  821. package/src/modules/sales/lib/permissions.generated.ts +53 -0
  822. package/src/modules/sales/lib/repository.ts +137 -0
  823. package/src/modules/sales/lib/types.ts +105 -0
  824. package/src/modules/sales/module.ts +418 -0
  825. package/src/modules/sales/permissions.ts +3 -0
  826. package/src/modules/sales/query/.gitkeep +0 -0
  827. package/src/modules/sales/query/calculateInvoiceDueSchedule.generated.ts +5 -0
  828. package/src/modules/sales/query/calculateInvoiceDueSchedule.test.ts +107 -0
  829. package/src/modules/sales/query/calculateInvoiceDueSchedule.ts +35 -0
  830. package/src/modules/sales/query/getApplicableSalesPrice.generated.ts +5 -0
  831. package/src/modules/sales/query/getApplicableSalesPrice.test.ts +110 -0
  832. package/src/modules/sales/query/getApplicableSalesPrice.ts +81 -0
  833. package/src/modules/sales/query/getChannel.generated.ts +5 -0
  834. package/src/modules/sales/query/getChannel.test.ts +39 -0
  835. package/src/modules/sales/query/getChannel.ts +15 -0
  836. package/src/modules/sales/query/getChannelOrder.generated.ts +5 -0
  837. package/src/modules/sales/query/getChannelOrder.test.ts +50 -0
  838. package/src/modules/sales/query/getChannelOrder.ts +29 -0
  839. package/src/modules/sales/query/getListing.generated.ts +5 -0
  840. package/src/modules/sales/query/getListing.test.ts +39 -0
  841. package/src/modules/sales/query/getListing.ts +15 -0
  842. package/src/modules/sales/query/getListingByExternalIdentifier.generated.ts +5 -0
  843. package/src/modules/sales/query/getListingByExternalIdentifier.test.ts +61 -0
  844. package/src/modules/sales/query/getListingByExternalIdentifier.ts +23 -0
  845. package/src/modules/sales/query/getSalesCreditNote.generated.ts +5 -0
  846. package/src/modules/sales/query/getSalesCreditNote.test.ts +44 -0
  847. package/src/modules/sales/query/getSalesCreditNote.ts +14 -0
  848. package/src/modules/sales/query/getSalesInvoice.generated.ts +5 -0
  849. package/src/modules/sales/query/getSalesInvoice.test.ts +44 -0
  850. package/src/modules/sales/query/getSalesInvoice.ts +14 -0
  851. package/src/modules/sales/query/getSalesOrder.generated.ts +5 -0
  852. package/src/modules/sales/query/getSalesOrder.test.ts +57 -0
  853. package/src/modules/sales/query/getSalesOrder.ts +20 -0
  854. package/src/modules/sales/query/getSalesPaymentTerm.generated.ts +5 -0
  855. package/src/modules/sales/query/getSalesPaymentTerm.test.ts +44 -0
  856. package/src/modules/sales/query/getSalesPaymentTerm.ts +24 -0
  857. package/src/modules/sales/query/getSalesPriceList.generated.ts +5 -0
  858. package/src/modules/sales/query/getSalesPriceList.test.ts +39 -0
  859. package/src/modules/sales/query/getSalesPriceList.ts +15 -0
  860. package/src/modules/sales/query/getShipment.generated.ts +5 -0
  861. package/src/modules/sales/query/getShipment.test.ts +44 -0
  862. package/src/modules/sales/query/getShipment.ts +12 -0
  863. package/src/modules/sales/query/getSyncJob.generated.ts +5 -0
  864. package/src/modules/sales/query/getSyncJob.test.ts +43 -0
  865. package/src/modules/sales/query/getSyncJob.ts +24 -0
  866. package/src/modules/sales/query/listChannelOrdersByStatus.generated.ts +5 -0
  867. package/src/modules/sales/query/listChannelOrdersByStatus.test.ts +58 -0
  868. package/src/modules/sales/query/listChannelOrdersByStatus.ts +53 -0
  869. package/src/modules/sales/query/listChannels.generated.ts +5 -0
  870. package/src/modules/sales/query/listChannels.test.ts +36 -0
  871. package/src/modules/sales/query/listChannels.ts +39 -0
  872. package/src/modules/sales/query/listListingsByChannel.generated.ts +5 -0
  873. package/src/modules/sales/query/listListingsByChannel.test.ts +36 -0
  874. package/src/modules/sales/query/listListingsByChannel.ts +39 -0
  875. package/src/modules/sales/query/listSalesCreditNotesByInvoice.generated.ts +5 -0
  876. package/src/modules/sales/query/listSalesCreditNotesByInvoice.test.ts +36 -0
  877. package/src/modules/sales/query/listSalesCreditNotesByInvoice.ts +42 -0
  878. package/src/modules/sales/query/listSalesInvoicesBySalesOrder.generated.ts +5 -0
  879. package/src/modules/sales/query/listSalesInvoicesBySalesOrder.test.ts +36 -0
  880. package/src/modules/sales/query/listSalesInvoicesBySalesOrder.ts +42 -0
  881. package/src/modules/sales/query/listSalesOrders.generated.ts +5 -0
  882. package/src/modules/sales/query/listSalesOrders.test.ts +79 -0
  883. package/src/modules/sales/query/listSalesOrders.ts +67 -0
  884. package/src/modules/sales/query/listSalesPaymentTerms.generated.ts +5 -0
  885. package/src/modules/sales/query/listSalesPaymentTerms.test.ts +36 -0
  886. package/src/modules/sales/query/listSalesPaymentTerms.ts +42 -0
  887. package/src/modules/sales/query/listSalesPriceLists.generated.ts +5 -0
  888. package/src/modules/sales/query/listSalesPriceLists.test.ts +36 -0
  889. package/src/modules/sales/query/listSalesPriceLists.ts +39 -0
  890. package/src/modules/sales/query/listSalesPriceRulesByPriceList.generated.ts +5 -0
  891. package/src/modules/sales/query/listSalesPriceRulesByPriceList.test.ts +39 -0
  892. package/src/modules/sales/query/listSalesPriceRulesByPriceList.ts +47 -0
  893. package/src/modules/sales/query/listShipmentsBySalesOrder.generated.ts +5 -0
  894. package/src/modules/sales/query/listShipmentsBySalesOrder.test.ts +36 -0
  895. package/src/modules/sales/query/listShipmentsBySalesOrder.ts +36 -0
  896. package/src/modules/sales/query/listSyncJobs.generated.ts +5 -0
  897. package/src/modules/sales/query/listSyncJobs.test.ts +50 -0
  898. package/src/modules/sales/query/listSyncJobs.ts +47 -0
  899. package/src/modules/sales/tailor.config.ts +13 -0
  900. package/src/modules/sales/tailor.d.ts +13 -0
  901. package/src/modules/sales/testing/commandTestUtils.ts +35 -0
  902. package/src/modules/sales/testing/fixtures.ts +520 -0
  903. package/src/modules/user-management/command/.gitkeep +0 -0
  904. package/src/modules/user-management/db/.gitkeep +0 -0
  905. package/src/modules/user-management/executor/.gitkeep +0 -0
  906. package/src/modules/user-management/generated/.gitkeep +0 -0
  907. package/src/modules/user-management/lib/errors.generated.ts +0 -5
  908. package/src/modules/user-management/lib/recomputeUserPermissions.ts +4 -2
  909. package/src/modules/user-management/permissions.ts +3 -0
  910. package/src/modules/user-management/query/.gitkeep +0 -0
  911. package/src/modules/user-management/query/listRolePermissionsByRole.generated.ts +5 -0
  912. package/src/modules/user-management/query/listRolePermissionsByRole.test.ts +20 -0
  913. package/src/modules/user-management/query/listRolePermissionsByRole.ts +28 -0
  914. package/src/modules/user-management/query/listUserRolesByUser.generated.ts +5 -0
  915. package/src/modules/user-management/query/listUserRolesByUser.test.ts +20 -0
  916. package/src/modules/user-management/query/listUserRolesByUser.ts +28 -0
  917. package/src/schemas.ts +6 -6
  918. package/src/shared/defineCommand.ts +1 -1
  919. package/src/shared/entityTypes.ts +1 -1
  920. package/src/shared/uuidv5.test.ts +18 -0
  921. package/src/shared/uuidv5.ts +23 -0
  922. package/src/testing/index.ts +1 -1
  923. package/templates/scaffold/app/backend/package.json +1 -3
  924. package/templates/scaffold/app/backend/seed/exec.mjs +7 -5
  925. package/templates/scaffold/app/backend/src/generated/kysely-tailordb.ts +0 -11
  926. package/templates/scaffold/module/__dot__gitignore +3 -0
  927. package/templates/scaffold/module/eslint.config.js +31 -0
  928. package/templates/scaffold/module/generated/kysely-tailordb.ts +3 -0
  929. package/templates/scaffold/module/lib/types.ts +1 -6
  930. package/templates/scaffold/module/package.json +26 -0
  931. package/templates/scaffold/module/seed/index.ts +19 -0
  932. package/templates/scaffold/module/tsconfig.json +16 -0
  933. /package/schemas/{app-compose → app}/actors.yml +0 -0
  934. /package/schemas/{app-compose → app}/business-flow.yml +0 -0
  935. /package/schemas/{app-compose → app}/requirements.yml +0 -0
  936. /package/schemas/{app-compose → app}/resolver.yml +0 -0
  937. /package/schemas/{app-compose → app}/screen.yml +0 -0
  938. /package/schemas/{app-compose → app}/story.yml +0 -0
  939. /package/src/modules/{purchase → inventory/command}/.gitkeep +0 -0
  940. /package/{templates/scaffold/module/generated → src/modules/inventory/db}/.gitkeep +0 -0
@@ -0,0 +1,34 @@
1
+ # GetSalesInvoice
2
+
3
+ ## Overview
4
+
5
+ GetSalesInvoice retrieves one sales invoice with line, due-schedule, and status detail for billing or downstream AR handoff support.
6
+
7
+ ## Business Rules
8
+
9
+ - Lookup by id performs an exact invoice match.
10
+ - The query returns DRAFT, ISSUED, SENT, and CANCELLED invoices.
11
+
12
+ ## Process Flow
13
+
14
+ ```mermaid
15
+ flowchart TD
16
+ A[Receive invoice id] --> B[Query SalesInvoice and SalesInvoiceLine]
17
+ B --> C{Found?}
18
+ C -->|No| D[Return null]
19
+ C -->|Yes| E[Return invoice with lines and schedule]
20
+ ```
21
+
22
+ ## External Dependencies
23
+
24
+ - None
25
+
26
+ ## Error Scenarios
27
+
28
+ - **NONE**: Returns null when no matching sales invoice exists.
29
+
30
+ ## Test Cases
31
+
32
+ - returns invoice when found by id
33
+ - returns issued invoice with due schedule
34
+ - returns null when invoice is not found
@@ -0,0 +1,36 @@
1
+ # GetSalesOrder
2
+
3
+ ## Overview
4
+
5
+ GetSalesOrder retrieves one sales order by identifier, returning header, line, customer, channel, payment-term, and progress details needed by sales, fulfillment, and billing workflows.
6
+
7
+ ## Business Rules
8
+
9
+ - Lookup by id performs an exact sales-order match.
10
+ - Returned payload includes line-level shipped, invoiced, and remaining quantities.
11
+ - The query may return any lifecycle status, including CANCELLED or CLOSED.
12
+
13
+ ## Process Flow
14
+
15
+ ```mermaid
16
+ flowchart TD
17
+ A[Receive sales-order id] --> B[Query SalesOrder and SalesOrderLine]
18
+ B --> C{Found?}
19
+ C -->|No| D[Return null]
20
+ C -->|Yes| E[Assemble order with progress details]
21
+ E --> F[Return sales order]
22
+ ```
23
+
24
+ ## External Dependencies
25
+
26
+ - None
27
+
28
+ ## Error Scenarios
29
+
30
+ - **NONE**: Returns null when no matching sales order exists.
31
+
32
+ ## Test Cases
33
+
34
+ - returns sales order when found by id
35
+ - returns line-level shipped and invoiced progress
36
+ - returns null when sales order is not found
@@ -0,0 +1,34 @@
1
+ # GetSalesPaymentTerm
2
+
3
+ ## Overview
4
+
5
+ GetSalesPaymentTerm retrieves one payment-term definition with its schedule-line content and discount metadata.
6
+
7
+ ## Business Rules
8
+
9
+ - Lookup by id performs an exact payment-term match.
10
+ - The query returns DRAFT, ACTIVE, and INACTIVE terms.
11
+
12
+ ## Process Flow
13
+
14
+ ```mermaid
15
+ flowchart TD
16
+ A[Receive payment-term id] --> B[Query SalesPaymentTerm]
17
+ B --> C{Found?}
18
+ C -->|No| D[Return null]
19
+ C -->|Yes| E[Return payment term]
20
+ ```
21
+
22
+ ## External Dependencies
23
+
24
+ - None
25
+
26
+ ## Error Scenarios
27
+
28
+ - **NONE**: Returns null when no matching sales payment term exists.
29
+
30
+ ## Test Cases
31
+
32
+ - returns payment term when found
33
+ - returns inactive payment term when requested directly
34
+ - returns null when payment term is not found
@@ -0,0 +1,34 @@
1
+ # GetSalesPriceList
2
+
3
+ ## Overview
4
+
5
+ GetSalesPriceList retrieves one sales price list by identifier, including company scope and lifecycle status.
6
+
7
+ ## Business Rules
8
+
9
+ - Lookup by id performs an exact price-list match.
10
+ - The query returns DRAFT, ACTIVE, and INACTIVE price lists.
11
+
12
+ ## Process Flow
13
+
14
+ ```mermaid
15
+ flowchart TD
16
+ A[Receive price-list id] --> B[Query SalesPriceList]
17
+ B --> C{Found?}
18
+ C -->|No| D[Return null]
19
+ C -->|Yes| E[Return price list]
20
+ ```
21
+
22
+ ## External Dependencies
23
+
24
+ - None
25
+
26
+ ## Error Scenarios
27
+
28
+ - **NONE**: Returns null when no matching sales price list exists.
29
+
30
+ ## Test Cases
31
+
32
+ - returns price list when found by id
33
+ - returns inactive price list when requested by id
34
+ - returns null when price list is not found
@@ -0,0 +1,34 @@
1
+ # GetShipment
2
+
3
+ ## Overview
4
+
5
+ GetShipment retrieves one shipment with posted quantities, draft details, and customer-facing shipment context.
6
+
7
+ ## Business Rules
8
+
9
+ - Lookup by id performs an exact shipment match.
10
+ - The query returns both DRAFT and POSTED shipments.
11
+
12
+ ## Process Flow
13
+
14
+ ```mermaid
15
+ flowchart TD
16
+ A[Receive shipment id] --> B[Query Shipment and ShipmentLine]
17
+ B --> C{Found?}
18
+ C -->|No| D[Return null]
19
+ C -->|Yes| E[Return shipment with lines]
20
+ ```
21
+
22
+ ## External Dependencies
23
+
24
+ - None
25
+
26
+ ## Error Scenarios
27
+
28
+ - **NONE**: Returns null when no matching shipment exists.
29
+
30
+ ## Test Cases
31
+
32
+ - returns shipment when found by id
33
+ - returns posted shipment with lines
34
+ - returns null when shipment is not found
@@ -0,0 +1,34 @@
1
+ # GetSyncJob
2
+
3
+ ## Overview
4
+
5
+ GetSyncJob retrieves one sync-job execution record with direction, timing, counts, and terminal outcome detail.
6
+
7
+ ## Business Rules
8
+
9
+ - Lookup by id performs an exact sync-job match.
10
+ - The query returns running and terminal sync-job states.
11
+
12
+ ## Process Flow
13
+
14
+ ```mermaid
15
+ flowchart TD
16
+ A[Receive sync-job id] --> B[Query SyncJob]
17
+ B --> C{Found?}
18
+ C -->|No| D[Return null]
19
+ C -->|Yes| E[Return sync job]
20
+ ```
21
+
22
+ ## External Dependencies
23
+
24
+ - None
25
+
26
+ ## Error Scenarios
27
+
28
+ - **NONE**: Returns null when no matching sync job exists.
29
+
30
+ ## Test Cases
31
+
32
+ - returns sync job when found by id
33
+ - returns failed sync job with counts and error summary
34
+ - returns null when sync job is not found
@@ -0,0 +1,34 @@
1
+ # ListChannelOrdersByStatus
2
+
3
+ ## Overview
4
+
5
+ ListChannelOrdersByStatus lists channel orders for operational support queues such as pending conversion, exception replay, or cancellation review.
6
+
7
+ ## Business Rules
8
+
9
+ - Company scope and at least one status value are required.
10
+ - The query may additionally filter by channel or date range.
11
+
12
+ ## Process Flow
13
+
14
+ ```mermaid
15
+ flowchart TD
16
+ A[Receive filters] --> B[Validate company and status filters]
17
+ B --> C[Query matching channel orders]
18
+ C --> D[Return channel-order summaries]
19
+ ```
20
+
21
+ ## External Dependencies
22
+
23
+ - None
24
+
25
+ ## Error Scenarios
26
+
27
+ - **STATUS_FILTER_REQUIRED**: At least one status filter is required.
28
+
29
+ ## Test Cases
30
+
31
+ - lists pending conversion channel orders
32
+ - lists exceptional channel orders for replay
33
+ - filters results by channel when provided
34
+ - throws when no status filter is provided
@@ -0,0 +1,33 @@
1
+ # ListChannels
2
+
3
+ ## Overview
4
+
5
+ ListChannels lists channels for commerce administration, support, and sync-operations planning.
6
+
7
+ ## Business Rules
8
+
9
+ - Company scope is required.
10
+ - Status filter is optional; omitted status returns all lifecycle states.
11
+
12
+ ## Process Flow
13
+
14
+ ```mermaid
15
+ flowchart TD
16
+ A[Receive list filters] --> B[Validate company scope]
17
+ B --> C[Query matching channels]
18
+ C --> D[Return channel summaries]
19
+ ```
20
+
21
+ ## External Dependencies
22
+
23
+ - None
24
+
25
+ ## Error Scenarios
26
+
27
+ - **COMPANY_SCOPE_REQUIRED**: Company scope is required.
28
+
29
+ ## Test Cases
30
+
31
+ - lists channels by company
32
+ - filters channels by status when provided
33
+ - throws when company scope is missing
@@ -0,0 +1,33 @@
1
+ # ListListingsByChannel
2
+
3
+ ## Overview
4
+
5
+ ListListingsByChannel lists all listings defined under one channel so merchandising and support teams can review assortment state.
6
+
7
+ ## Business Rules
8
+
9
+ - Channel identifier is required.
10
+ - Returned listings may include active, paused, draft, and retired records unless a status filter narrows the result.
11
+
12
+ ## Process Flow
13
+
14
+ ```mermaid
15
+ flowchart TD
16
+ A[Receive channel id] --> B[Query listings by channel]
17
+ B --> C[Apply optional status filter]
18
+ C --> D[Return listing summaries]
19
+ ```
20
+
21
+ ## External Dependencies
22
+
23
+ - None
24
+
25
+ ## Error Scenarios
26
+
27
+ - **CHANNEL_ID_REQUIRED**: Channel id is required.
28
+
29
+ ## Test Cases
30
+
31
+ - lists listings under a channel
32
+ - filters listings by status when provided
33
+ - throws when channel id is missing
@@ -0,0 +1,33 @@
1
+ # ListSalesCreditNotesByInvoice
2
+
3
+ ## Overview
4
+
5
+ ListSalesCreditNotesByInvoice lists all credit notes issued against one invoice for dispute handling and downstream AR reconciliation.
6
+
7
+ ## Business Rules
8
+
9
+ - Sales-invoice identifier is required.
10
+ - Returned credit notes may include draft and issued states unless a status filter narrows the result.
11
+
12
+ ## Process Flow
13
+
14
+ ```mermaid
15
+ flowchart TD
16
+ A[Receive invoice id] --> B[Query credit notes by invoice]
17
+ B --> C[Apply optional status filter]
18
+ C --> D[Return credit-note history]
19
+ ```
20
+
21
+ ## External Dependencies
22
+
23
+ - None
24
+
25
+ ## Error Scenarios
26
+
27
+ - **SALES_INVOICE_ID_REQUIRED**: Sales-invoice id is required.
28
+
29
+ ## Test Cases
30
+
31
+ - lists credit notes under an invoice
32
+ - filters credit notes by status when provided
33
+ - throws when invoice id is missing
@@ -0,0 +1,33 @@
1
+ # ListSalesInvoicesBySalesOrder
2
+
3
+ ## Overview
4
+
5
+ ListSalesInvoicesBySalesOrder lists invoices issued against one sales order so billing teams can review partial or final billing history.
6
+
7
+ ## Business Rules
8
+
9
+ - Sales-order identifier is required.
10
+ - Returned invoices may be draft, issued, sent, or cancelled unless a status filter narrows the result.
11
+
12
+ ## Process Flow
13
+
14
+ ```mermaid
15
+ flowchart TD
16
+ A[Receive sales-order id] --> B[Query invoices by sales order]
17
+ B --> C[Apply optional status filter]
18
+ C --> D[Return invoice history]
19
+ ```
20
+
21
+ ## External Dependencies
22
+
23
+ - None
24
+
25
+ ## Error Scenarios
26
+
27
+ - **SALES_ORDER_ID_REQUIRED**: Sales-order id is required.
28
+
29
+ ## Test Cases
30
+
31
+ - lists invoices under a sales order
32
+ - filters invoices by status when provided
33
+ - throws when sales-order id is missing
@@ -0,0 +1,36 @@
1
+ # ListSalesOrders
2
+
3
+ ## Overview
4
+
5
+ ListSalesOrders lists sales orders for operational monitoring and work queues. It supports filtering by company, customer, status, channel, and date ranges while returning summary progress fields.
6
+
7
+ ## Business Rules
8
+
9
+ - At least company scope is required for multi-tenant safety.
10
+ - Status filters are optional; omitted status filter returns all statuses.
11
+ - Returned rows include summary open-balance metrics for fulfillment and billing work.
12
+
13
+ ## Process Flow
14
+
15
+ ```mermaid
16
+ flowchart TD
17
+ A[Receive filter criteria] --> B[Validate company scope]
18
+ B --> C[Query matching SalesOrders]
19
+ C --> D[Compute summary progress fields]
20
+ D --> E[Return matching orders]
21
+ ```
22
+
23
+ ## External Dependencies
24
+
25
+ - None
26
+
27
+ ## Error Scenarios
28
+
29
+ - **COMPANY_SCOPE_REQUIRED**: Company scope is required.
30
+
31
+ ## Test Cases
32
+
33
+ - lists sales orders by company scope
34
+ - filters sales orders by status and customer when provided
35
+ - returns summary open-balance metrics
36
+ - throws when company scope is missing
@@ -0,0 +1,33 @@
1
+ # ListSalesPaymentTerms
2
+
3
+ ## Overview
4
+
5
+ ListSalesPaymentTerms lists payment terms available for sales assignment and administrative review.
6
+
7
+ ## Business Rules
8
+
9
+ - Company scope is required.
10
+ - Status filter is optional; omitted status returns all lifecycle states.
11
+
12
+ ## Process Flow
13
+
14
+ ```mermaid
15
+ flowchart TD
16
+ A[Receive list filters] --> B[Validate company scope]
17
+ B --> C[Query matching payment terms]
18
+ C --> D[Return payment-term summaries]
19
+ ```
20
+
21
+ ## External Dependencies
22
+
23
+ - None
24
+
25
+ ## Error Scenarios
26
+
27
+ - **COMPANY_SCOPE_REQUIRED**: Company scope is required.
28
+
29
+ ## Test Cases
30
+
31
+ - lists payment terms by company
32
+ - filters payment terms by status when provided
33
+ - throws when company scope is missing
@@ -0,0 +1,33 @@
1
+ # ListSalesPriceLists
2
+
3
+ ## Overview
4
+
5
+ ListSalesPriceLists lists sales price lists for pricing administration. It supports company and lifecycle filtering and returns summary metadata needed for pricing maintenance.
6
+
7
+ ## Business Rules
8
+
9
+ - Company scope is required.
10
+ - Status filter is optional; omitted status returns all lifecycle states.
11
+
12
+ ## Process Flow
13
+
14
+ ```mermaid
15
+ flowchart TD
16
+ A[Receive list filters] --> B[Validate company scope]
17
+ B --> C[Query matching sales price lists]
18
+ C --> D[Return price-list summaries]
19
+ ```
20
+
21
+ ## External Dependencies
22
+
23
+ - None
24
+
25
+ ## Error Scenarios
26
+
27
+ - **COMPANY_SCOPE_REQUIRED**: Company scope is required.
28
+
29
+ ## Test Cases
30
+
31
+ - lists sales price lists by company
32
+ - filters price lists by lifecycle status
33
+ - throws when company scope is missing
@@ -0,0 +1,33 @@
1
+ # ListSalesPriceRulesByPriceList
2
+
3
+ ## Overview
4
+
5
+ ListSalesPriceRulesByPriceList lists pricing rules maintained under a selected sales price list so pricing administrators can review scope, precedence, and lifecycle.
6
+
7
+ ## Business Rules
8
+
9
+ - Referenced sales price list must exist.
10
+ - The query returns rules across draft, active, and inactive states unless a status filter narrows the result.
11
+
12
+ ## Process Flow
13
+
14
+ ```mermaid
15
+ flowchart TD
16
+ A[Receive sales price list id] --> B[Query SalesPriceRule by price list]
17
+ B --> C[Apply optional status filter]
18
+ C --> D[Return matching rules]
19
+ ```
20
+
21
+ ## External Dependencies
22
+
23
+ - None
24
+
25
+ ## Error Scenarios
26
+
27
+ - **PRICE_LIST_NOT_FOUND**: Referenced sales price list does not exist.
28
+
29
+ ## Test Cases
30
+
31
+ - lists rules under a sales price list
32
+ - filters rules by lifecycle status when provided
33
+ - throws when price list is not found
@@ -0,0 +1,33 @@
1
+ # ListShipmentsBySalesOrder
2
+
3
+ ## Overview
4
+
5
+ ListShipmentsBySalesOrder lists all shipments created for one sales order so fulfillment and billing teams can review shipment history and posted evidence.
6
+
7
+ ## Business Rules
8
+
9
+ - Sales-order identifier is required.
10
+ - Returned result may include draft and posted shipments for the order.
11
+
12
+ ## Process Flow
13
+
14
+ ```mermaid
15
+ flowchart TD
16
+ A[Receive sales-order id] --> B[Query shipments by sales order]
17
+ B --> C[Sort shipments by creation or ship date]
18
+ C --> D[Return shipment history]
19
+ ```
20
+
21
+ ## External Dependencies
22
+
23
+ - None
24
+
25
+ ## Error Scenarios
26
+
27
+ - **SALES_ORDER_ID_REQUIRED**: Sales-order id is required.
28
+
29
+ ## Test Cases
30
+
31
+ - lists shipments under a sales order
32
+ - returns both draft and posted shipments when present
33
+ - throws when sales-order id is missing
@@ -0,0 +1,34 @@
1
+ # ListSyncJobs
2
+
3
+ ## Overview
4
+
5
+ ListSyncJobs lists sync-job executions for monitoring, replay management, and integration support.
6
+
7
+ ## Business Rules
8
+
9
+ - Company scope is required.
10
+ - Optional filters include channel, direction, and terminal status.
11
+
12
+ ## Process Flow
13
+
14
+ ```mermaid
15
+ flowchart TD
16
+ A[Receive list filters] --> B[Validate company scope]
17
+ B --> C[Query matching sync jobs]
18
+ C --> D[Return sync-job summaries]
19
+ ```
20
+
21
+ ## External Dependencies
22
+
23
+ - None
24
+
25
+ ## Error Scenarios
26
+
27
+ - **COMPANY_SCOPE_REQUIRED**: Company scope is required.
28
+
29
+ ## Test Cases
30
+
31
+ - lists sync jobs by company
32
+ - filters sync jobs by channel and direction when provided
33
+ - filters sync jobs by terminal status when provided
34
+ - throws when company scope is missing
File without changes
File without changes