@open-mercato/core 0.6.7-develop.6669.1.40b669666b → 0.6.7-develop.6670.1.4efa7961c6

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 (473) hide show
  1. package/.turbo/turbo-build.log +2 -2
  2. package/dist/generated/entities/inventory_balance/index.js +21 -0
  3. package/dist/generated/entities/inventory_balance/index.js.map +7 -0
  4. package/dist/generated/entities/inventory_lot/index.js +19 -0
  5. package/dist/generated/entities/inventory_lot/index.js.map +7 -0
  6. package/dist/generated/entities/inventory_movement/index.js +35 -0
  7. package/dist/generated/entities/inventory_movement/index.js.map +7 -0
  8. package/dist/generated/entities/inventory_reservation/index.js +23 -0
  9. package/dist/generated/entities/inventory_reservation/index.js.map +7 -0
  10. package/dist/generated/entities/product_inventory_profile/index.js +21 -0
  11. package/dist/generated/entities/product_inventory_profile/index.js.map +7 -0
  12. package/dist/generated/entities/sales_order_warehouse_assignment/index.js +11 -0
  13. package/dist/generated/entities/sales_order_warehouse_assignment/index.js.map +7 -0
  14. package/dist/generated/entities/warehouse/index.js +25 -0
  15. package/dist/generated/entities/warehouse/index.js.map +7 -0
  16. package/dist/generated/entities/warehouse_location/index.js +21 -0
  17. package/dist/generated/entities/warehouse_location/index.js.map +7 -0
  18. package/dist/generated/entities/warehouse_zone/index.js +11 -0
  19. package/dist/generated/entities/warehouse_zone/index.js.map +7 -0
  20. package/dist/generated/entities.ids.generated.js +12 -0
  21. package/dist/generated/entities.ids.generated.js.map +2 -2
  22. package/dist/generated/entity-fields-registry.js +98 -0
  23. package/dist/generated/entity-fields-registry.js.map +2 -2
  24. package/dist/modules/auth/backend/roles/page.js +12 -4
  25. package/dist/modules/auth/backend/roles/page.js.map +2 -2
  26. package/dist/modules/auth/lib/backendChrome.js +1 -0
  27. package/dist/modules/auth/lib/backendChrome.js.map +2 -2
  28. package/dist/modules/auth/services/rbacService.js +16 -17
  29. package/dist/modules/auth/services/rbacService.js.map +2 -2
  30. package/dist/modules/catalog/api/products/route.js +3 -0
  31. package/dist/modules/catalog/api/products/route.js.map +2 -2
  32. package/dist/modules/catalog/api/variants/route.js +3 -0
  33. package/dist/modules/catalog/api/variants/route.js.map +2 -2
  34. package/dist/modules/query_index/lib/engine.js +6 -6
  35. package/dist/modules/query_index/lib/engine.js.map +2 -2
  36. package/dist/modules/sales/api/documents/factory.js +1 -0
  37. package/dist/modules/sales/api/documents/factory.js.map +2 -2
  38. package/dist/modules/sales/commands/documents.js +53 -0
  39. package/dist/modules/sales/commands/documents.js.map +2 -2
  40. package/dist/modules/sales/components/documents/ItemsSection.js +51 -2
  41. package/dist/modules/sales/components/documents/ItemsSection.js.map +2 -2
  42. package/dist/modules/sales/events.js +2 -0
  43. package/dist/modules/sales/events.js.map +2 -2
  44. package/dist/modules/sales/widgets/injection/order-items-context.js +11 -0
  45. package/dist/modules/sales/widgets/injection/order-items-context.js.map +7 -0
  46. package/dist/modules/wms/acl.js +18 -0
  47. package/dist/modules/wms/acl.js.map +7 -0
  48. package/dist/modules/wms/analytics.js +11 -0
  49. package/dist/modules/wms/analytics.js.map +7 -0
  50. package/dist/modules/wms/api/dashboard/operational/route.js +80 -0
  51. package/dist/modules/wms/api/dashboard/operational/route.js.map +7 -0
  52. package/dist/modules/wms/api/interceptors.js +90 -0
  53. package/dist/modules/wms/api/interceptors.js.map +7 -0
  54. package/dist/modules/wms/api/inventory/adjust/route.js +51 -0
  55. package/dist/modules/wms/api/inventory/adjust/route.js.map +7 -0
  56. package/dist/modules/wms/api/inventory/allocate/route.js +51 -0
  57. package/dist/modules/wms/api/inventory/allocate/route.js.map +7 -0
  58. package/dist/modules/wms/api/inventory/balances/route.js +172 -0
  59. package/dist/modules/wms/api/inventory/balances/route.js.map +7 -0
  60. package/dist/modules/wms/api/inventory/cycle-count/route.js +52 -0
  61. package/dist/modules/wms/api/inventory/cycle-count/route.js.map +7 -0
  62. package/dist/modules/wms/api/inventory/helpers.js +113 -0
  63. package/dist/modules/wms/api/inventory/helpers.js.map +7 -0
  64. package/dist/modules/wms/api/inventory/import/apply/route.js +46 -0
  65. package/dist/modules/wms/api/inventory/import/apply/route.js.map +7 -0
  66. package/dist/modules/wms/api/inventory/import/helpers.js +195 -0
  67. package/dist/modules/wms/api/inventory/import/helpers.js.map +7 -0
  68. package/dist/modules/wms/api/inventory/import/template/route.js +32 -0
  69. package/dist/modules/wms/api/inventory/import/template/route.js.map +7 -0
  70. package/dist/modules/wms/api/inventory/import/validate/route.js +54 -0
  71. package/dist/modules/wms/api/inventory/import/validate/route.js.map +7 -0
  72. package/dist/modules/wms/api/inventory/move/route.js +51 -0
  73. package/dist/modules/wms/api/inventory/move/route.js.map +7 -0
  74. package/dist/modules/wms/api/inventory/movements/route.js +164 -0
  75. package/dist/modules/wms/api/inventory/movements/route.js.map +7 -0
  76. package/dist/modules/wms/api/inventory/receive/route.js +50 -0
  77. package/dist/modules/wms/api/inventory/receive/route.js.map +7 -0
  78. package/dist/modules/wms/api/inventory/release/route.js +44 -0
  79. package/dist/modules/wms/api/inventory/release/route.js.map +7 -0
  80. package/dist/modules/wms/api/inventory/reservations/route.js +128 -0
  81. package/dist/modules/wms/api/inventory/reservations/route.js.map +7 -0
  82. package/dist/modules/wms/api/inventory/reserve/route.js +59 -0
  83. package/dist/modules/wms/api/inventory/reserve/route.js.map +7 -0
  84. package/dist/modules/wms/api/inventory-profiles/route.js +178 -0
  85. package/dist/modules/wms/api/inventory-profiles/route.js.map +7 -0
  86. package/dist/modules/wms/api/listEnrichers.js +181 -0
  87. package/dist/modules/wms/api/listEnrichers.js.map +7 -0
  88. package/dist/modules/wms/api/listSearch.js +77 -0
  89. package/dist/modules/wms/api/listSearch.js.map +7 -0
  90. package/dist/modules/wms/api/locations/route.js +172 -0
  91. package/dist/modules/wms/api/locations/route.js.map +7 -0
  92. package/dist/modules/wms/api/lots/route.js +204 -0
  93. package/dist/modules/wms/api/lots/route.js.map +7 -0
  94. package/dist/modules/wms/api/openapi.js +27 -0
  95. package/dist/modules/wms/api/openapi.js.map +7 -0
  96. package/dist/modules/wms/api/sales-orders/[salesOrderId]/re-run-reservation/route.js +54 -0
  97. package/dist/modules/wms/api/sales-orders/[salesOrderId]/re-run-reservation/route.js.map +7 -0
  98. package/dist/modules/wms/api/sales-orders/[salesOrderId]/warehouse-assignment/route.js +279 -0
  99. package/dist/modules/wms/api/sales-orders/[salesOrderId]/warehouse-assignment/route.js.map +7 -0
  100. package/dist/modules/wms/api/sales-orders/assign-warehouse/route.js +56 -0
  101. package/dist/modules/wms/api/sales-orders/assign-warehouse/route.js.map +7 -0
  102. package/dist/modules/wms/api/sales-orders/unassign-warehouse/route.js +43 -0
  103. package/dist/modules/wms/api/sales-orders/unassign-warehouse/route.js.map +7 -0
  104. package/dist/modules/wms/api/warehouses/route.js +181 -0
  105. package/dist/modules/wms/api/warehouses/route.js.map +7 -0
  106. package/dist/modules/wms/api/zones/route.js +159 -0
  107. package/dist/modules/wms/api/zones/route.js.map +7 -0
  108. package/dist/modules/wms/backend/config/wms/page.js +9 -0
  109. package/dist/modules/wms/backend/config/wms/page.js.map +7 -0
  110. package/dist/modules/wms/backend/config/wms/page.meta.js +18 -0
  111. package/dist/modules/wms/backend/config/wms/page.meta.js.map +7 -0
  112. package/dist/modules/wms/backend/page.js +9 -0
  113. package/dist/modules/wms/backend/page.js.map +7 -0
  114. package/dist/modules/wms/backend/page.meta.js +16 -0
  115. package/dist/modules/wms/backend/page.meta.js.map +7 -0
  116. package/dist/modules/wms/backend/wms/inventory/page.js +9 -0
  117. package/dist/modules/wms/backend/wms/inventory/page.js.map +7 -0
  118. package/dist/modules/wms/backend/wms/inventory/page.meta.js +18 -0
  119. package/dist/modules/wms/backend/wms/inventory/page.meta.js.map +7 -0
  120. package/dist/modules/wms/backend/wms/location/[id]/page.js +9 -0
  121. package/dist/modules/wms/backend/wms/location/[id]/page.js.map +7 -0
  122. package/dist/modules/wms/backend/wms/location/[id]/page.meta.js +18 -0
  123. package/dist/modules/wms/backend/wms/location/[id]/page.meta.js.map +7 -0
  124. package/dist/modules/wms/backend/wms/locations/page.js +10 -0
  125. package/dist/modules/wms/backend/wms/locations/page.js.map +7 -0
  126. package/dist/modules/wms/backend/wms/locations/page.meta.js +18 -0
  127. package/dist/modules/wms/backend/wms/locations/page.meta.js.map +7 -0
  128. package/dist/modules/wms/backend/wms/lot/[id]/page.js +9 -0
  129. package/dist/modules/wms/backend/wms/lot/[id]/page.js.map +7 -0
  130. package/dist/modules/wms/backend/wms/lot/[id]/page.meta.js +18 -0
  131. package/dist/modules/wms/backend/wms/lot/[id]/page.meta.js.map +7 -0
  132. package/dist/modules/wms/backend/wms/lots/page.js +9 -0
  133. package/dist/modules/wms/backend/wms/lots/page.js.map +7 -0
  134. package/dist/modules/wms/backend/wms/lots/page.meta.js +18 -0
  135. package/dist/modules/wms/backend/wms/lots/page.meta.js.map +7 -0
  136. package/dist/modules/wms/backend/wms/movements/page.js +22 -0
  137. package/dist/modules/wms/backend/wms/movements/page.js.map +7 -0
  138. package/dist/modules/wms/backend/wms/movements/page.meta.js +18 -0
  139. package/dist/modules/wms/backend/wms/movements/page.meta.js.map +7 -0
  140. package/dist/modules/wms/backend/wms/reservations/page.js +23 -0
  141. package/dist/modules/wms/backend/wms/reservations/page.js.map +7 -0
  142. package/dist/modules/wms/backend/wms/reservations/page.meta.js +18 -0
  143. package/dist/modules/wms/backend/wms/reservations/page.meta.js.map +7 -0
  144. package/dist/modules/wms/backend/wms/sku/[id]/page.js +9 -0
  145. package/dist/modules/wms/backend/wms/sku/[id]/page.js.map +7 -0
  146. package/dist/modules/wms/backend/wms/sku/[id]/page.meta.js +18 -0
  147. package/dist/modules/wms/backend/wms/sku/[id]/page.meta.js.map +7 -0
  148. package/dist/modules/wms/backend/wms/warehouses/page.js +10 -0
  149. package/dist/modules/wms/backend/wms/warehouses/page.js.map +7 -0
  150. package/dist/modules/wms/backend/wms/warehouses/page.meta.js +18 -0
  151. package/dist/modules/wms/backend/wms/warehouses/page.meta.js.map +7 -0
  152. package/dist/modules/wms/backend/wms/zones/page.js +10 -0
  153. package/dist/modules/wms/backend/wms/zones/page.js.map +7 -0
  154. package/dist/modules/wms/backend/wms/zones/page.meta.js +18 -0
  155. package/dist/modules/wms/backend/wms/zones/page.meta.js.map +7 -0
  156. package/dist/modules/wms/ce.js +80 -0
  157. package/dist/modules/wms/ce.js.map +7 -0
  158. package/dist/modules/wms/cli.js +83 -0
  159. package/dist/modules/wms/cli.js.map +7 -0
  160. package/dist/modules/wms/commands/configuration.js +1519 -0
  161. package/dist/modules/wms/commands/configuration.js.map +7 -0
  162. package/dist/modules/wms/commands/index.js +4 -0
  163. package/dist/modules/wms/commands/index.js.map +7 -0
  164. package/dist/modules/wms/commands/inventory-actions.js +1539 -0
  165. package/dist/modules/wms/commands/inventory-actions.js.map +7 -0
  166. package/dist/modules/wms/commands/sales-order-assignment.js +277 -0
  167. package/dist/modules/wms/commands/sales-order-assignment.js.map +7 -0
  168. package/dist/modules/wms/commands/shared.js +82 -0
  169. package/dist/modules/wms/commands/shared.js.map +7 -0
  170. package/dist/modules/wms/components/backend/AdjustInventoryDialog.js +755 -0
  171. package/dist/modules/wms/components/backend/AdjustInventoryDialog.js.map +7 -0
  172. package/dist/modules/wms/components/backend/ChangeLotStatusDialog.js +269 -0
  173. package/dist/modules/wms/components/backend/ChangeLotStatusDialog.js.map +7 -0
  174. package/dist/modules/wms/components/backend/CycleCountWizardDialog.js +1783 -0
  175. package/dist/modules/wms/components/backend/CycleCountWizardDialog.js.map +7 -0
  176. package/dist/modules/wms/components/backend/ImportInventoryDialog.js +766 -0
  177. package/dist/modules/wms/components/backend/ImportInventoryDialog.js.map +7 -0
  178. package/dist/modules/wms/components/backend/InventoryOperationsSection.js +119 -0
  179. package/dist/modules/wms/components/backend/InventoryOperationsSection.js.map +7 -0
  180. package/dist/modules/wms/components/backend/LocationEditDialog.js +140 -0
  181. package/dist/modules/wms/components/backend/LocationEditDialog.js.map +7 -0
  182. package/dist/modules/wms/components/backend/MoveInventoryDialog.js +791 -0
  183. package/dist/modules/wms/components/backend/MoveInventoryDialog.js.map +7 -0
  184. package/dist/modules/wms/components/backend/ReceiveInventoryDialog.js +656 -0
  185. package/dist/modules/wms/components/backend/ReceiveInventoryDialog.js.map +7 -0
  186. package/dist/modules/wms/components/backend/ReleaseReservationDialog.js +344 -0
  187. package/dist/modules/wms/components/backend/ReleaseReservationDialog.js.map +7 -0
  188. package/dist/modules/wms/components/backend/ReserveInventoryDialog.js +475 -0
  189. package/dist/modules/wms/components/backend/ReserveInventoryDialog.js.map +7 -0
  190. package/dist/modules/wms/components/backend/WmsConfigurationPage.js +1112 -0
  191. package/dist/modules/wms/components/backend/WmsConfigurationPage.js.map +7 -0
  192. package/dist/modules/wms/components/backend/WmsInventoryConsolePage.js +908 -0
  193. package/dist/modules/wms/components/backend/WmsInventoryConsolePage.js.map +7 -0
  194. package/dist/modules/wms/components/backend/WmsLocationDetailPage.js +1015 -0
  195. package/dist/modules/wms/components/backend/WmsLocationDetailPage.js.map +7 -0
  196. package/dist/modules/wms/components/backend/WmsLotDetailPage.js +1049 -0
  197. package/dist/modules/wms/components/backend/WmsLotDetailPage.js.map +7 -0
  198. package/dist/modules/wms/components/backend/WmsLotsListPage.js +297 -0
  199. package/dist/modules/wms/components/backend/WmsLotsListPage.js.map +7 -0
  200. package/dist/modules/wms/components/backend/WmsOperationalDashboardPage.js +757 -0
  201. package/dist/modules/wms/components/backend/WmsOperationalDashboardPage.js.map +7 -0
  202. package/dist/modules/wms/components/backend/WmsSkuDetailPage.js +975 -0
  203. package/dist/modules/wms/components/backend/WmsSkuDetailPage.js.map +7 -0
  204. package/dist/modules/wms/components/backend/inventoryMutationLoaders.js +710 -0
  205. package/dist/modules/wms/components/backend/inventoryMutationLoaders.js.map +7 -0
  206. package/dist/modules/wms/components/backend/useWmsInventoryMutationAccess.js +79 -0
  207. package/dist/modules/wms/components/backend/useWmsInventoryMutationAccess.js.map +7 -0
  208. package/dist/modules/wms/components/backend/useWmsInventoryScopeFromSearchParams.js +24 -0
  209. package/dist/modules/wms/components/backend/useWmsInventoryScopeFromSearchParams.js.map +7 -0
  210. package/dist/modules/wms/components/backend/wmsLookupLoaders.js +55 -0
  211. package/dist/modules/wms/components/backend/wmsLookupLoaders.js.map +7 -0
  212. package/dist/modules/wms/data/enrichers.js +501 -0
  213. package/dist/modules/wms/data/enrichers.js.map +7 -0
  214. package/dist/modules/wms/data/entities.js +467 -0
  215. package/dist/modules/wms/data/entities.js.map +7 -0
  216. package/dist/modules/wms/data/validators.js +399 -0
  217. package/dist/modules/wms/data/validators.js.map +7 -0
  218. package/dist/modules/wms/di.js +27 -0
  219. package/dist/modules/wms/di.js.map +7 -0
  220. package/dist/modules/wms/events.js +42 -0
  221. package/dist/modules/wms/events.js.map +7 -0
  222. package/dist/modules/wms/index.js +17 -0
  223. package/dist/modules/wms/index.js.map +7 -0
  224. package/dist/modules/wms/lib/catalogInventoryProfileIntent.js +54 -0
  225. package/dist/modules/wms/lib/catalogInventoryProfileIntent.js.map +7 -0
  226. package/dist/modules/wms/lib/catalogInventoryProfileSync.js +144 -0
  227. package/dist/modules/wms/lib/catalogInventoryProfileSync.js.map +7 -0
  228. package/dist/modules/wms/lib/expiry.js +29 -0
  229. package/dist/modules/wms/lib/expiry.js.map +7 -0
  230. package/dist/modules/wms/lib/flashMutationError.js +51 -0
  231. package/dist/modules/wms/lib/flashMutationError.js.map +7 -0
  232. package/dist/modules/wms/lib/inventoryDisplayUi.js +188 -0
  233. package/dist/modules/wms/lib/inventoryDisplayUi.js.map +7 -0
  234. package/dist/modules/wms/lib/inventoryIdempotency.js +37 -0
  235. package/dist/modules/wms/lib/inventoryIdempotency.js.map +7 -0
  236. package/dist/modules/wms/lib/inventoryImportCsv.js +173 -0
  237. package/dist/modules/wms/lib/inventoryImportCsv.js.map +7 -0
  238. package/dist/modules/wms/lib/inventoryImportService.js +468 -0
  239. package/dist/modules/wms/lib/inventoryImportService.js.map +7 -0
  240. package/dist/modules/wms/lib/inventoryMutationUi.js +25 -0
  241. package/dist/modules/wms/lib/inventoryMutationUi.js.map +7 -0
  242. package/dist/modules/wms/lib/inventoryPolicy.js +61 -0
  243. package/dist/modules/wms/lib/inventoryPolicy.js.map +7 -0
  244. package/dist/modules/wms/lib/inventoryReconciliation.js +193 -0
  245. package/dist/modules/wms/lib/inventoryReconciliation.js.map +7 -0
  246. package/dist/modules/wms/lib/inventoryTrackingValidation.js +13 -0
  247. package/dist/modules/wms/lib/inventoryTrackingValidation.js.map +7 -0
  248. package/dist/modules/wms/lib/loadOperationalDashboard.js +580 -0
  249. package/dist/modules/wms/lib/loadOperationalDashboard.js.map +7 -0
  250. package/dist/modules/wms/lib/lowStockBalanceFilter.js +49 -0
  251. package/dist/modules/wms/lib/lowStockBalanceFilter.js.map +7 -0
  252. package/dist/modules/wms/lib/primaryWarehousePolicy.js +32 -0
  253. package/dist/modules/wms/lib/primaryWarehousePolicy.js.map +7 -0
  254. package/dist/modules/wms/lib/roleFeatures.js +30 -0
  255. package/dist/modules/wms/lib/roleFeatures.js.map +7 -0
  256. package/dist/modules/wms/lib/salesOrderInventoryAutomation.js +291 -0
  257. package/dist/modules/wms/lib/salesOrderInventoryAutomation.js.map +7 -0
  258. package/dist/modules/wms/lib/salesOrderWarehouseAssignment.js +54 -0
  259. package/dist/modules/wms/lib/salesOrderWarehouseAssignment.js.map +7 -0
  260. package/dist/modules/wms/lib/wmsIntegrationToggles.js +71 -0
  261. package/dist/modules/wms/lib/wmsIntegrationToggles.js.map +7 -0
  262. package/dist/modules/wms/migrations/Migration20260428110546.js +78 -0
  263. package/dist/modules/wms/migrations/Migration20260428110546.js.map +7 -0
  264. package/dist/modules/wms/migrations/Migration20260527120000.js +15 -0
  265. package/dist/modules/wms/migrations/Migration20260527120000.js.map +7 -0
  266. package/dist/modules/wms/migrations/Migration20260527140000.js +37 -0
  267. package/dist/modules/wms/migrations/Migration20260527140000.js.map +7 -0
  268. package/dist/modules/wms/migrations/Migration20260613120000.js +23 -0
  269. package/dist/modules/wms/migrations/Migration20260613120000.js.map +7 -0
  270. package/dist/modules/wms/migrations/Migration20260616090000.js +13 -0
  271. package/dist/modules/wms/migrations/Migration20260616090000.js.map +7 -0
  272. package/dist/modules/wms/migrations/Migration20260707180000.js +15 -0
  273. package/dist/modules/wms/migrations/Migration20260707180000.js.map +7 -0
  274. package/dist/modules/wms/notifications.client.js +18 -0
  275. package/dist/modules/wms/notifications.client.js.map +7 -0
  276. package/dist/modules/wms/notifications.js +53 -0
  277. package/dist/modules/wms/notifications.js.map +7 -0
  278. package/dist/modules/wms/search.js +196 -0
  279. package/dist/modules/wms/search.js.map +7 -0
  280. package/dist/modules/wms/setup.js +30 -0
  281. package/dist/modules/wms/setup.js.map +7 -0
  282. package/dist/modules/wms/subscribers/low-stock-notification.js +40 -0
  283. package/dist/modules/wms/subscribers/low-stock-notification.js.map +7 -0
  284. package/dist/modules/wms/subscribers/reservation-shortfall-notification.js +69 -0
  285. package/dist/modules/wms/subscribers/reservation-shortfall-notification.js.map +7 -0
  286. package/dist/modules/wms/subscribers/sales-order-cancelled-release.js +14 -0
  287. package/dist/modules/wms/subscribers/sales-order-cancelled-release.js.map +7 -0
  288. package/dist/modules/wms/subscribers/sales-order-confirmed-reserve.js +14 -0
  289. package/dist/modules/wms/subscribers/sales-order-confirmed-reserve.js.map +7 -0
  290. package/dist/modules/wms/translations.js +10 -0
  291. package/dist/modules/wms/translations.js.map +7 -0
  292. package/dist/modules/wms/vector.js +9 -0
  293. package/dist/modules/wms/vector.js.map +7 -0
  294. package/dist/modules/wms/widgets/injection/catalog-inventory-profile/widget.js +200 -0
  295. package/dist/modules/wms/widgets/injection/catalog-inventory-profile/widget.js.map +7 -0
  296. package/dist/modules/wms/widgets/injection/order-items-stock-column/widget.js +104 -0
  297. package/dist/modules/wms/widgets/injection/order-items-stock-column/widget.js.map +7 -0
  298. package/dist/modules/wms/widgets/injection/sales-order-stock-context/widget.client.js +389 -0
  299. package/dist/modules/wms/widgets/injection/sales-order-stock-context/widget.client.js.map +7 -0
  300. package/dist/modules/wms/widgets/injection/sales-order-stock-context/widget.js +16 -0
  301. package/dist/modules/wms/widgets/injection/sales-order-stock-context/widget.js.map +7 -0
  302. package/dist/modules/wms/widgets/injection-table.js +36 -0
  303. package/dist/modules/wms/widgets/injection-table.js.map +7 -0
  304. package/dist/modules/wms/widgets/notifications/WmsLowStockRenderer.js +150 -0
  305. package/dist/modules/wms/widgets/notifications/WmsLowStockRenderer.js.map +7 -0
  306. package/dist/modules/wms/widgets/notifications/WmsReservationShortfallRenderer.js +186 -0
  307. package/dist/modules/wms/widgets/notifications/WmsReservationShortfallRenderer.js.map +7 -0
  308. package/dist/modules/wms/widgets/notifications/index.js +7 -0
  309. package/dist/modules/wms/widgets/notifications/index.js.map +7 -0
  310. package/generated/entities/inventory_balance/index.ts +9 -0
  311. package/generated/entities/inventory_lot/index.ts +8 -0
  312. package/generated/entities/inventory_movement/index.ts +16 -0
  313. package/generated/entities/inventory_reservation/index.ts +10 -0
  314. package/generated/entities/product_inventory_profile/index.ts +9 -0
  315. package/generated/entities/sales_order_warehouse_assignment/index.ts +4 -0
  316. package/generated/entities/warehouse/index.ts +11 -0
  317. package/generated/entities/warehouse_location/index.ts +9 -0
  318. package/generated/entities/warehouse_zone/index.ts +4 -0
  319. package/generated/entities.ids.generated.ts +12 -0
  320. package/generated/entity-fields-registry.ts +98 -0
  321. package/package.json +7 -7
  322. package/src/modules/auth/backend/roles/page.tsx +13 -4
  323. package/src/modules/auth/i18n/de.json +2 -0
  324. package/src/modules/auth/i18n/en.json +2 -0
  325. package/src/modules/auth/i18n/es.json +2 -0
  326. package/src/modules/auth/i18n/pl.json +2 -0
  327. package/src/modules/auth/lib/backendChrome.tsx +1 -0
  328. package/src/modules/auth/services/rbacService.ts +25 -21
  329. package/src/modules/catalog/api/products/route.ts +3 -0
  330. package/src/modules/catalog/api/variants/route.ts +3 -0
  331. package/src/modules/query_index/lib/engine.ts +18 -6
  332. package/src/modules/sales/api/documents/factory.ts +1 -0
  333. package/src/modules/sales/commands/documents.ts +71 -0
  334. package/src/modules/sales/components/documents/ItemsSection.tsx +58 -0
  335. package/src/modules/sales/events.ts +2 -0
  336. package/src/modules/sales/widgets/injection/order-items-context.ts +15 -0
  337. package/src/modules/wms/acl.ts +14 -0
  338. package/src/modules/wms/analytics.ts +9 -0
  339. package/src/modules/wms/api/dashboard/operational/route.ts +83 -0
  340. package/src/modules/wms/api/interceptors.ts +108 -0
  341. package/src/modules/wms/api/inventory/adjust/route.ts +50 -0
  342. package/src/modules/wms/api/inventory/allocate/route.ts +50 -0
  343. package/src/modules/wms/api/inventory/balances/route.ts +178 -0
  344. package/src/modules/wms/api/inventory/cycle-count/route.ts +51 -0
  345. package/src/modules/wms/api/inventory/helpers.ts +128 -0
  346. package/src/modules/wms/api/inventory/import/apply/route.ts +47 -0
  347. package/src/modules/wms/api/inventory/import/helpers.ts +223 -0
  348. package/src/modules/wms/api/inventory/import/template/route.ts +31 -0
  349. package/src/modules/wms/api/inventory/import/validate/route.ts +56 -0
  350. package/src/modules/wms/api/inventory/move/route.ts +50 -0
  351. package/src/modules/wms/api/inventory/movements/route.ts +164 -0
  352. package/src/modules/wms/api/inventory/receive/route.ts +49 -0
  353. package/src/modules/wms/api/inventory/release/route.ts +43 -0
  354. package/src/modules/wms/api/inventory/reservations/route.ts +128 -0
  355. package/src/modules/wms/api/inventory/reserve/route.ts +59 -0
  356. package/src/modules/wms/api/inventory-profiles/route.ts +177 -0
  357. package/src/modules/wms/api/listEnrichers.ts +312 -0
  358. package/src/modules/wms/api/listSearch.ts +121 -0
  359. package/src/modules/wms/api/locations/route.ts +171 -0
  360. package/src/modules/wms/api/lots/route.ts +205 -0
  361. package/src/modules/wms/api/openapi.ts +28 -0
  362. package/src/modules/wms/api/sales-orders/[salesOrderId]/re-run-reservation/route.ts +58 -0
  363. package/src/modules/wms/api/sales-orders/[salesOrderId]/warehouse-assignment/route.ts +306 -0
  364. package/src/modules/wms/api/sales-orders/assign-warehouse/route.ts +57 -0
  365. package/src/modules/wms/api/sales-orders/unassign-warehouse/route.ts +43 -0
  366. package/src/modules/wms/api/warehouses/route.ts +181 -0
  367. package/src/modules/wms/api/zones/route.ts +158 -0
  368. package/src/modules/wms/backend/config/wms/page.meta.ts +14 -0
  369. package/src/modules/wms/backend/config/wms/page.tsx +5 -0
  370. package/src/modules/wms/backend/page.meta.ts +12 -0
  371. package/src/modules/wms/backend/page.tsx +5 -0
  372. package/src/modules/wms/backend/wms/inventory/page.meta.ts +14 -0
  373. package/src/modules/wms/backend/wms/inventory/page.tsx +5 -0
  374. package/src/modules/wms/backend/wms/location/[id]/page.meta.ts +14 -0
  375. package/src/modules/wms/backend/wms/location/[id]/page.tsx +5 -0
  376. package/src/modules/wms/backend/wms/locations/page.meta.ts +14 -0
  377. package/src/modules/wms/backend/wms/locations/page.tsx +12 -0
  378. package/src/modules/wms/backend/wms/lot/[id]/page.meta.ts +14 -0
  379. package/src/modules/wms/backend/wms/lot/[id]/page.tsx +5 -0
  380. package/src/modules/wms/backend/wms/lots/page.meta.ts +14 -0
  381. package/src/modules/wms/backend/wms/lots/page.tsx +5 -0
  382. package/src/modules/wms/backend/wms/movements/page.meta.ts +14 -0
  383. package/src/modules/wms/backend/wms/movements/page.tsx +23 -0
  384. package/src/modules/wms/backend/wms/reservations/page.meta.ts +14 -0
  385. package/src/modules/wms/backend/wms/reservations/page.tsx +24 -0
  386. package/src/modules/wms/backend/wms/sku/[id]/page.meta.ts +14 -0
  387. package/src/modules/wms/backend/wms/sku/[id]/page.tsx +5 -0
  388. package/src/modules/wms/backend/wms/warehouses/page.meta.ts +14 -0
  389. package/src/modules/wms/backend/wms/warehouses/page.tsx +12 -0
  390. package/src/modules/wms/backend/wms/zones/page.meta.ts +14 -0
  391. package/src/modules/wms/backend/wms/zones/page.tsx +12 -0
  392. package/src/modules/wms/ce.ts +76 -0
  393. package/src/modules/wms/cli.ts +96 -0
  394. package/src/modules/wms/commands/configuration.ts +1844 -0
  395. package/src/modules/wms/commands/index.ts +3 -0
  396. package/src/modules/wms/commands/inventory-actions.ts +1866 -0
  397. package/src/modules/wms/commands/sales-order-assignment.ts +346 -0
  398. package/src/modules/wms/commands/shared.ts +90 -0
  399. package/src/modules/wms/components/backend/AdjustInventoryDialog.tsx +820 -0
  400. package/src/modules/wms/components/backend/ChangeLotStatusDialog.tsx +312 -0
  401. package/src/modules/wms/components/backend/CycleCountWizardDialog.tsx +2007 -0
  402. package/src/modules/wms/components/backend/ImportInventoryDialog.tsx +1018 -0
  403. package/src/modules/wms/components/backend/InventoryOperationsSection.tsx +159 -0
  404. package/src/modules/wms/components/backend/LocationEditDialog.tsx +185 -0
  405. package/src/modules/wms/components/backend/MoveInventoryDialog.tsx +907 -0
  406. package/src/modules/wms/components/backend/ReceiveInventoryDialog.tsx +695 -0
  407. package/src/modules/wms/components/backend/ReleaseReservationDialog.tsx +424 -0
  408. package/src/modules/wms/components/backend/ReserveInventoryDialog.tsx +511 -0
  409. package/src/modules/wms/components/backend/WmsConfigurationPage.tsx +1340 -0
  410. package/src/modules/wms/components/backend/WmsInventoryConsolePage.tsx +1132 -0
  411. package/src/modules/wms/components/backend/WmsLocationDetailPage.tsx +1310 -0
  412. package/src/modules/wms/components/backend/WmsLotDetailPage.tsx +1355 -0
  413. package/src/modules/wms/components/backend/WmsLotsListPage.tsx +359 -0
  414. package/src/modules/wms/components/backend/WmsOperationalDashboardPage.tsx +958 -0
  415. package/src/modules/wms/components/backend/WmsSkuDetailPage.tsx +1245 -0
  416. package/src/modules/wms/components/backend/inventoryMutationLoaders.ts +960 -0
  417. package/src/modules/wms/components/backend/useWmsInventoryMutationAccess.ts +89 -0
  418. package/src/modules/wms/components/backend/useWmsInventoryScopeFromSearchParams.ts +32 -0
  419. package/src/modules/wms/components/backend/wmsLookupLoaders.ts +78 -0
  420. package/src/modules/wms/data/enrichers.ts +718 -0
  421. package/src/modules/wms/data/entities.ts +436 -0
  422. package/src/modules/wms/data/validators.ts +463 -0
  423. package/src/modules/wms/di.ts +25 -0
  424. package/src/modules/wms/events.ts +41 -0
  425. package/src/modules/wms/i18n/de.json +1051 -0
  426. package/src/modules/wms/i18n/en.json +1051 -0
  427. package/src/modules/wms/i18n/es.json +1051 -0
  428. package/src/modules/wms/i18n/pl.json +1051 -0
  429. package/src/modules/wms/index.ts +15 -0
  430. package/src/modules/wms/lib/catalogInventoryProfileIntent.ts +65 -0
  431. package/src/modules/wms/lib/catalogInventoryProfileSync.ts +199 -0
  432. package/src/modules/wms/lib/expiry.ts +30 -0
  433. package/src/modules/wms/lib/flashMutationError.ts +74 -0
  434. package/src/modules/wms/lib/inventoryDisplayUi.ts +249 -0
  435. package/src/modules/wms/lib/inventoryIdempotency.ts +54 -0
  436. package/src/modules/wms/lib/inventoryImportCsv.ts +212 -0
  437. package/src/modules/wms/lib/inventoryImportService.ts +629 -0
  438. package/src/modules/wms/lib/inventoryMutationUi.ts +21 -0
  439. package/src/modules/wms/lib/inventoryPolicy.ts +111 -0
  440. package/src/modules/wms/lib/inventoryReconciliation.ts +263 -0
  441. package/src/modules/wms/lib/inventoryTrackingValidation.ts +23 -0
  442. package/src/modules/wms/lib/loadOperationalDashboard.ts +776 -0
  443. package/src/modules/wms/lib/lowStockBalanceFilter.ts +74 -0
  444. package/src/modules/wms/lib/primaryWarehousePolicy.ts +46 -0
  445. package/src/modules/wms/lib/roleFeatures.ts +32 -0
  446. package/src/modules/wms/lib/salesOrderInventoryAutomation.ts +390 -0
  447. package/src/modules/wms/lib/salesOrderWarehouseAssignment.ts +78 -0
  448. package/src/modules/wms/lib/wmsIntegrationToggles.ts +81 -0
  449. package/src/modules/wms/migrations/.snapshot-open-mercato.json +2880 -0
  450. package/src/modules/wms/migrations/Migration20260428110546.ts +91 -0
  451. package/src/modules/wms/migrations/Migration20260527120000.ts +15 -0
  452. package/src/modules/wms/migrations/Migration20260527140000.ts +35 -0
  453. package/src/modules/wms/migrations/Migration20260613120000.ts +21 -0
  454. package/src/modules/wms/migrations/Migration20260616090000.ts +11 -0
  455. package/src/modules/wms/migrations/Migration20260707180000.ts +13 -0
  456. package/src/modules/wms/notifications.client.ts +18 -0
  457. package/src/modules/wms/notifications.ts +51 -0
  458. package/src/modules/wms/search.ts +230 -0
  459. package/src/modules/wms/setup.ts +29 -0
  460. package/src/modules/wms/subscribers/low-stock-notification.ts +54 -0
  461. package/src/modules/wms/subscribers/reservation-shortfall-notification.ts +98 -0
  462. package/src/modules/wms/subscribers/sales-order-cancelled-release.ts +21 -0
  463. package/src/modules/wms/subscribers/sales-order-confirmed-reserve.ts +21 -0
  464. package/src/modules/wms/translations.ts +6 -0
  465. package/src/modules/wms/vector.ts +7 -0
  466. package/src/modules/wms/widgets/injection/catalog-inventory-profile/widget.ts +238 -0
  467. package/src/modules/wms/widgets/injection/order-items-stock-column/widget.tsx +153 -0
  468. package/src/modules/wms/widgets/injection/sales-order-stock-context/widget.client.tsx +476 -0
  469. package/src/modules/wms/widgets/injection/sales-order-stock-context/widget.ts +15 -0
  470. package/src/modules/wms/widgets/injection-table.ts +34 -0
  471. package/src/modules/wms/widgets/notifications/WmsLowStockRenderer.tsx +153 -0
  472. package/src/modules/wms/widgets/notifications/WmsReservationShortfallRenderer.tsx +194 -0
  473. package/src/modules/wms/widgets/notifications/index.ts +2 -0
@@ -0,0 +1,467 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __decorateClass = (decorators, target, key, kind) => {
4
+ var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;
5
+ for (var i = decorators.length - 1, decorator; i >= 0; i--)
6
+ if (decorator = decorators[i])
7
+ result = (kind ? decorator(target, key, result) : decorator(result)) || result;
8
+ if (kind && result) __defProp(target, key, result);
9
+ return result;
10
+ };
11
+ var _a, _b, _c, _d, _e, _f, _g, _h, _i;
12
+ import { Collection, OptionalProps } from "@mikro-orm/core";
13
+ import {
14
+ Entity,
15
+ Index,
16
+ ManyToOne,
17
+ OneToMany,
18
+ PrimaryKey,
19
+ Property
20
+ } from "@mikro-orm/decorators/legacy";
21
+ class WmsScopedEntity {
22
+ constructor() {
23
+ this.createdAt = /* @__PURE__ */ new Date();
24
+ this.updatedAt = /* @__PURE__ */ new Date();
25
+ }
26
+ }
27
+ __decorateClass([
28
+ PrimaryKey({ type: "uuid", defaultRaw: "gen_random_uuid()" })
29
+ ], WmsScopedEntity.prototype, "id", 2);
30
+ __decorateClass([
31
+ Property({ name: "organization_id", type: "uuid" })
32
+ ], WmsScopedEntity.prototype, "organizationId", 2);
33
+ __decorateClass([
34
+ Property({ name: "tenant_id", type: "uuid" })
35
+ ], WmsScopedEntity.prototype, "tenantId", 2);
36
+ __decorateClass([
37
+ Property({ type: "jsonb", nullable: true })
38
+ ], WmsScopedEntity.prototype, "metadata", 2);
39
+ __decorateClass([
40
+ Property({ name: "created_at", type: Date, onCreate: () => /* @__PURE__ */ new Date() })
41
+ ], WmsScopedEntity.prototype, "createdAt", 2);
42
+ __decorateClass([
43
+ Property({ name: "updated_at", type: Date, onUpdate: () => /* @__PURE__ */ new Date() })
44
+ ], WmsScopedEntity.prototype, "updatedAt", 2);
45
+ __decorateClass([
46
+ Property({ name: "deleted_at", type: Date, nullable: true })
47
+ ], WmsScopedEntity.prototype, "deletedAt", 2);
48
+ let Warehouse = class extends (_a = WmsScopedEntity, OptionalProps, _a) {
49
+ constructor() {
50
+ super(...arguments);
51
+ this.isActive = true;
52
+ this.isPrimary = false;
53
+ this.zones = new Collection(this);
54
+ this.locations = new Collection(this);
55
+ }
56
+ };
57
+ __decorateClass([
58
+ Property({ type: "text" })
59
+ ], Warehouse.prototype, "name", 2);
60
+ __decorateClass([
61
+ Property({ type: "text" })
62
+ ], Warehouse.prototype, "code", 2);
63
+ __decorateClass([
64
+ Property({ name: "is_active", type: "boolean", default: true })
65
+ ], Warehouse.prototype, "isActive", 2);
66
+ __decorateClass([
67
+ Property({ name: "is_primary", type: "boolean", default: false })
68
+ ], Warehouse.prototype, "isPrimary", 2);
69
+ __decorateClass([
70
+ Property({ name: "address_line1", type: "text", nullable: true })
71
+ ], Warehouse.prototype, "addressLine1", 2);
72
+ __decorateClass([
73
+ Property({ type: "text", nullable: true })
74
+ ], Warehouse.prototype, "city", 2);
75
+ __decorateClass([
76
+ Property({ name: "postal_code", type: "text", nullable: true })
77
+ ], Warehouse.prototype, "postalCode", 2);
78
+ __decorateClass([
79
+ Property({ type: "text", nullable: true })
80
+ ], Warehouse.prototype, "country", 2);
81
+ __decorateClass([
82
+ Property({ type: "text", nullable: true })
83
+ ], Warehouse.prototype, "timezone", 2);
84
+ __decorateClass([
85
+ OneToMany(() => WarehouseZone, (zone) => zone.warehouse)
86
+ ], Warehouse.prototype, "zones", 2);
87
+ __decorateClass([
88
+ OneToMany(() => WarehouseLocation, (location) => location.warehouse)
89
+ ], Warehouse.prototype, "locations", 2);
90
+ Warehouse = __decorateClass([
91
+ Entity({ tableName: "wms_warehouses" }),
92
+ Index({ name: "wms_warehouses_org_tenant_idx", properties: ["organizationId", "tenantId"] }),
93
+ Index({
94
+ name: "wms_warehouses_org_code_unique_idx",
95
+ expression: 'create unique index "wms_warehouses_org_code_unique_idx" on "wms_warehouses" ("organization_id", "code") where deleted_at is null'
96
+ }),
97
+ Index({
98
+ name: "wms_warehouses_org_primary_unique_idx",
99
+ expression: 'create unique index "wms_warehouses_org_primary_unique_idx" on "wms_warehouses" ("organization_id") where deleted_at is null and is_primary = true'
100
+ })
101
+ ], Warehouse);
102
+ let WarehouseZone = class extends (_b = WmsScopedEntity, OptionalProps, _b) {
103
+ constructor() {
104
+ super(...arguments);
105
+ this.priority = 0;
106
+ }
107
+ };
108
+ __decorateClass([
109
+ ManyToOne(() => Warehouse, { fieldName: "warehouse_id" })
110
+ ], WarehouseZone.prototype, "warehouse", 2);
111
+ __decorateClass([
112
+ Property({ type: "text" })
113
+ ], WarehouseZone.prototype, "code", 2);
114
+ __decorateClass([
115
+ Property({ type: "text" })
116
+ ], WarehouseZone.prototype, "name", 2);
117
+ __decorateClass([
118
+ Property({ type: "integer", default: 0 })
119
+ ], WarehouseZone.prototype, "priority", 2);
120
+ WarehouseZone = __decorateClass([
121
+ Entity({ tableName: "wms_warehouse_zones" }),
122
+ Index({ name: "wms_warehouse_zones_org_tenant_idx", properties: ["organizationId", "tenantId"] }),
123
+ Index({ name: "wms_warehouse_zones_warehouse_idx", properties: ["warehouse"] }),
124
+ Index({
125
+ name: "wms_warehouse_zones_warehouse_code_unique_idx",
126
+ expression: 'create unique index "wms_warehouse_zones_warehouse_code_unique_idx" on "wms_warehouse_zones" ("warehouse_id", "code") where deleted_at is null'
127
+ })
128
+ ], WarehouseZone);
129
+ let WarehouseLocation = class extends (_c = WmsScopedEntity, OptionalProps, _c) {
130
+ constructor() {
131
+ super(...arguments);
132
+ this.children = new Collection(this);
133
+ this.isActive = true;
134
+ }
135
+ };
136
+ __decorateClass([
137
+ ManyToOne(() => Warehouse, { fieldName: "warehouse_id" })
138
+ ], WarehouseLocation.prototype, "warehouse", 2);
139
+ __decorateClass([
140
+ Property({ type: "text" })
141
+ ], WarehouseLocation.prototype, "code", 2);
142
+ __decorateClass([
143
+ Property({ type: "text" })
144
+ ], WarehouseLocation.prototype, "type", 2);
145
+ __decorateClass([
146
+ ManyToOne(() => WarehouseLocation, { fieldName: "parent_id", nullable: true })
147
+ ], WarehouseLocation.prototype, "parent", 2);
148
+ __decorateClass([
149
+ OneToMany(() => WarehouseLocation, (location) => location.parent)
150
+ ], WarehouseLocation.prototype, "children", 2);
151
+ __decorateClass([
152
+ Property({ name: "is_active", type: "boolean", default: true })
153
+ ], WarehouseLocation.prototype, "isActive", 2);
154
+ __decorateClass([
155
+ Property({ name: "capacity_units", type: "numeric", precision: 16, scale: 4, nullable: true })
156
+ ], WarehouseLocation.prototype, "capacityUnits", 2);
157
+ __decorateClass([
158
+ Property({ name: "capacity_weight", type: "numeric", precision: 16, scale: 4, nullable: true })
159
+ ], WarehouseLocation.prototype, "capacityWeight", 2);
160
+ __decorateClass([
161
+ Property({ type: "jsonb", nullable: true })
162
+ ], WarehouseLocation.prototype, "constraints", 2);
163
+ WarehouseLocation = __decorateClass([
164
+ Entity({ tableName: "wms_warehouse_locations" }),
165
+ Index({ name: "wms_warehouse_locations_org_tenant_idx", properties: ["organizationId", "tenantId"] }),
166
+ Index({ name: "wms_warehouse_locations_warehouse_idx", properties: ["warehouse"] }),
167
+ Index({ name: "wms_warehouse_locations_parent_idx", properties: ["parent"] }),
168
+ Index({
169
+ name: "wms_warehouse_locations_warehouse_code_unique_idx",
170
+ expression: 'create unique index "wms_warehouse_locations_warehouse_code_unique_idx" on "wms_warehouse_locations" ("warehouse_id", "code") where deleted_at is null'
171
+ })
172
+ ], WarehouseLocation);
173
+ let ProductInventoryProfile = class extends (_d = WmsScopedEntity, OptionalProps, _d) {
174
+ constructor() {
175
+ super(...arguments);
176
+ this.trackLot = false;
177
+ this.trackSerial = false;
178
+ this.trackExpiration = false;
179
+ this.reorderPoint = "0";
180
+ this.safetyStock = "0";
181
+ }
182
+ };
183
+ __decorateClass([
184
+ Property({ name: "catalog_product_id", type: "uuid" })
185
+ ], ProductInventoryProfile.prototype, "catalogProductId", 2);
186
+ __decorateClass([
187
+ Property({ name: "catalog_variant_id", type: "uuid", nullable: true })
188
+ ], ProductInventoryProfile.prototype, "catalogVariantId", 2);
189
+ __decorateClass([
190
+ Property({ name: "default_uom", type: "text" })
191
+ ], ProductInventoryProfile.prototype, "defaultUom", 2);
192
+ __decorateClass([
193
+ Property({ name: "track_lot", type: "boolean", default: false })
194
+ ], ProductInventoryProfile.prototype, "trackLot", 2);
195
+ __decorateClass([
196
+ Property({ name: "track_serial", type: "boolean", default: false })
197
+ ], ProductInventoryProfile.prototype, "trackSerial", 2);
198
+ __decorateClass([
199
+ Property({ name: "track_expiration", type: "boolean", default: false })
200
+ ], ProductInventoryProfile.prototype, "trackExpiration", 2);
201
+ __decorateClass([
202
+ Property({ name: "default_strategy", type: "text" })
203
+ ], ProductInventoryProfile.prototype, "defaultStrategy", 2);
204
+ __decorateClass([
205
+ Property({ name: "reorder_point", type: "numeric", precision: 16, scale: 4, default: "0" })
206
+ ], ProductInventoryProfile.prototype, "reorderPoint", 2);
207
+ __decorateClass([
208
+ Property({ name: "safety_stock", type: "numeric", precision: 16, scale: 4, default: "0" })
209
+ ], ProductInventoryProfile.prototype, "safetyStock", 2);
210
+ ProductInventoryProfile = __decorateClass([
211
+ Entity({ tableName: "wms_product_inventory_profiles" }),
212
+ Index({ name: "wms_inventory_profiles_org_tenant_idx", properties: ["organizationId", "tenantId"] }),
213
+ Index({
214
+ name: "wms_inventory_profiles_variant_unique_idx",
215
+ expression: 'create unique index "wms_inventory_profiles_variant_unique_idx" on "wms_product_inventory_profiles" ("organization_id", "catalog_variant_id") where deleted_at is null and catalog_variant_id is not null'
216
+ }),
217
+ Index({
218
+ name: "wms_inventory_profiles_product_unique_idx",
219
+ expression: 'create unique index "wms_inventory_profiles_product_unique_idx" on "wms_product_inventory_profiles" ("organization_id", "catalog_product_id") where deleted_at is null and catalog_variant_id is null'
220
+ })
221
+ ], ProductInventoryProfile);
222
+ let InventoryLot = class extends (_e = WmsScopedEntity, OptionalProps, _e) {
223
+ constructor() {
224
+ super(...arguments);
225
+ this.status = "available";
226
+ }
227
+ };
228
+ __decorateClass([
229
+ Property({ name: "catalog_variant_id", type: "uuid" })
230
+ ], InventoryLot.prototype, "catalogVariantId", 2);
231
+ __decorateClass([
232
+ Property({ type: "text" })
233
+ ], InventoryLot.prototype, "sku", 2);
234
+ __decorateClass([
235
+ Property({ name: "lot_number", type: "text" })
236
+ ], InventoryLot.prototype, "lotNumber", 2);
237
+ __decorateClass([
238
+ Property({ name: "batch_number", type: "text", nullable: true })
239
+ ], InventoryLot.prototype, "batchNumber", 2);
240
+ __decorateClass([
241
+ Property({ name: "manufactured_at", type: Date, nullable: true })
242
+ ], InventoryLot.prototype, "manufacturedAt", 2);
243
+ __decorateClass([
244
+ Property({ name: "best_before_at", type: Date, nullable: true })
245
+ ], InventoryLot.prototype, "bestBeforeAt", 2);
246
+ __decorateClass([
247
+ Property({ name: "expires_at", type: Date, nullable: true })
248
+ ], InventoryLot.prototype, "expiresAt", 2);
249
+ __decorateClass([
250
+ Property({ type: "text", default: "available" })
251
+ ], InventoryLot.prototype, "status", 2);
252
+ InventoryLot = __decorateClass([
253
+ Entity({ tableName: "wms_inventory_lots" }),
254
+ Index({ name: "wms_inventory_lots_org_tenant_idx", properties: ["organizationId", "tenantId"] }),
255
+ Index({ name: "wms_inventory_lots_variant_idx", properties: ["catalogVariantId"] }),
256
+ Index({
257
+ name: "wms_inventory_lots_variant_lot_unique_idx",
258
+ expression: 'create unique index "wms_inventory_lots_variant_lot_unique_idx" on "wms_inventory_lots" ("organization_id", "catalog_variant_id", "lot_number") where deleted_at is null'
259
+ })
260
+ ], InventoryLot);
261
+ let InventoryBalance = class extends (_f = WmsScopedEntity, OptionalProps, _f) {
262
+ constructor() {
263
+ super(...arguments);
264
+ this.quantityOnHand = "0";
265
+ this.quantityReserved = "0";
266
+ this.quantityAllocated = "0";
267
+ }
268
+ };
269
+ __decorateClass([
270
+ ManyToOne(() => Warehouse, { fieldName: "warehouse_id" })
271
+ ], InventoryBalance.prototype, "warehouse", 2);
272
+ __decorateClass([
273
+ ManyToOne(() => WarehouseLocation, { fieldName: "location_id" })
274
+ ], InventoryBalance.prototype, "location", 2);
275
+ __decorateClass([
276
+ Property({ name: "catalog_variant_id", type: "uuid" })
277
+ ], InventoryBalance.prototype, "catalogVariantId", 2);
278
+ __decorateClass([
279
+ ManyToOne(() => InventoryLot, { fieldName: "lot_id", nullable: true })
280
+ ], InventoryBalance.prototype, "lot", 2);
281
+ __decorateClass([
282
+ Property({ name: "serial_number", type: "text", nullable: true })
283
+ ], InventoryBalance.prototype, "serialNumber", 2);
284
+ __decorateClass([
285
+ Property({ name: "quantity_on_hand", type: "numeric", precision: 16, scale: 4, default: "0" })
286
+ ], InventoryBalance.prototype, "quantityOnHand", 2);
287
+ __decorateClass([
288
+ Property({ name: "quantity_reserved", type: "numeric", precision: 16, scale: 4, default: "0" })
289
+ ], InventoryBalance.prototype, "quantityReserved", 2);
290
+ __decorateClass([
291
+ Property({ name: "quantity_allocated", type: "numeric", precision: 16, scale: 4, default: "0" })
292
+ ], InventoryBalance.prototype, "quantityAllocated", 2);
293
+ __decorateClass([
294
+ Property({
295
+ name: "quantity_available",
296
+ type: "numeric",
297
+ precision: 16,
298
+ scale: 4,
299
+ generated: (cols) => `(${cols.quantityOnHand} - ${cols.quantityReserved} - ${cols.quantityAllocated}) stored`,
300
+ hidden: true
301
+ })
302
+ ], InventoryBalance.prototype, "quantityAvailable", 2);
303
+ InventoryBalance = __decorateClass([
304
+ Entity({ tableName: "wms_inventory_balances" }),
305
+ Index({ name: "wms_inventory_balances_org_tenant_idx", properties: ["organizationId", "tenantId"] }),
306
+ Index({ name: "wms_inventory_balances_org_warehouse_variant_idx", properties: ["organizationId", "warehouse", "catalogVariantId"] }),
307
+ Index({ name: "wms_inventory_balances_org_location_variant_idx", properties: ["organizationId", "location", "catalogVariantId"] }),
308
+ Index({
309
+ name: "wms_inventory_balances_org_lot_idx",
310
+ expression: 'create index "wms_inventory_balances_org_lot_idx" on "wms_inventory_balances" ("organization_id", "lot_id") where lot_id is not null and deleted_at is null'
311
+ }),
312
+ Index({
313
+ name: "wms_inventory_balances_serial_unique_idx",
314
+ expression: 'create unique index "wms_inventory_balances_serial_unique_idx" on "wms_inventory_balances" ("organization_id", "warehouse_id", "location_id", "catalog_variant_id", "serial_number") where serial_number is not null and deleted_at is null'
315
+ })
316
+ ], InventoryBalance);
317
+ let InventoryReservation = class extends (_g = WmsScopedEntity, OptionalProps, _g) {
318
+ constructor() {
319
+ super(...arguments);
320
+ this.status = "active";
321
+ }
322
+ };
323
+ __decorateClass([
324
+ ManyToOne(() => Warehouse, { fieldName: "warehouse_id" })
325
+ ], InventoryReservation.prototype, "warehouse", 2);
326
+ __decorateClass([
327
+ Property({ name: "catalog_variant_id", type: "uuid" })
328
+ ], InventoryReservation.prototype, "catalogVariantId", 2);
329
+ __decorateClass([
330
+ ManyToOne(() => InventoryLot, { fieldName: "lot_id", nullable: true })
331
+ ], InventoryReservation.prototype, "lot", 2);
332
+ __decorateClass([
333
+ Property({ name: "serial_number", type: "text", nullable: true })
334
+ ], InventoryReservation.prototype, "serialNumber", 2);
335
+ __decorateClass([
336
+ Property({ type: "numeric", precision: 16, scale: 4 })
337
+ ], InventoryReservation.prototype, "quantity", 2);
338
+ __decorateClass([
339
+ Property({ name: "source_type", type: "text" })
340
+ ], InventoryReservation.prototype, "sourceType", 2);
341
+ __decorateClass([
342
+ Property({ name: "source_id", type: "uuid" })
343
+ ], InventoryReservation.prototype, "sourceId", 2);
344
+ __decorateClass([
345
+ Property({ name: "expires_at", type: Date, nullable: true })
346
+ ], InventoryReservation.prototype, "expiresAt", 2);
347
+ __decorateClass([
348
+ Property({ type: "text", default: "active" })
349
+ ], InventoryReservation.prototype, "status", 2);
350
+ __decorateClass([
351
+ Property({ name: "idempotency_key", type: "text", nullable: true })
352
+ ], InventoryReservation.prototype, "idempotencyKey", 2);
353
+ InventoryReservation = __decorateClass([
354
+ Entity({ tableName: "wms_inventory_reservations" }),
355
+ Index({ name: "wms_inventory_reservations_org_tenant_idx", properties: ["organizationId", "tenantId"] }),
356
+ Index({ name: "wms_inventory_reservations_source_idx", properties: ["organizationId", "sourceType", "sourceId"] }),
357
+ Index({ name: "wms_inventory_reservations_status_idx", properties: ["organizationId", "warehouse", "catalogVariantId", "status"] }),
358
+ Index({
359
+ name: "wms_inventory_reservations_idempotency_unique_idx",
360
+ expression: `create unique index "wms_inventory_reservations_idempotency_unique_idx" on "wms_inventory_reservations" ("organization_id", "idempotency_key") where idempotency_key is not null and deleted_at is null and status = 'active'`
361
+ })
362
+ ], InventoryReservation);
363
+ let SalesOrderWarehouseAssignment = class extends (_h = WmsScopedEntity, OptionalProps, _h) {
364
+ };
365
+ __decorateClass([
366
+ Property({ name: "sales_order_id", type: "uuid" })
367
+ ], SalesOrderWarehouseAssignment.prototype, "salesOrderId", 2);
368
+ __decorateClass([
369
+ ManyToOne(() => Warehouse, { fieldName: "warehouse_id" })
370
+ ], SalesOrderWarehouseAssignment.prototype, "warehouse", 2);
371
+ __decorateClass([
372
+ Property({ name: "assigned_by", type: "uuid", nullable: true })
373
+ ], SalesOrderWarehouseAssignment.prototype, "assignedBy", 2);
374
+ __decorateClass([
375
+ Property({ type: "text", nullable: true })
376
+ ], SalesOrderWarehouseAssignment.prototype, "notes", 2);
377
+ SalesOrderWarehouseAssignment = __decorateClass([
378
+ Entity({ tableName: "wms_sales_order_warehouse_assignments" }),
379
+ Index({ name: "wms_sowa_org_tenant_idx", properties: ["organizationId", "tenantId"] }),
380
+ Index({
381
+ name: "wms_sowa_warehouse_idx",
382
+ expression: 'create index "wms_sowa_warehouse_idx" on "wms_sales_order_warehouse_assignments" ("warehouse_id")'
383
+ }),
384
+ Index({
385
+ name: "wms_sowa_org_order_unique_idx",
386
+ expression: 'create unique index "wms_sowa_org_order_unique_idx" on "wms_sales_order_warehouse_assignments" ("organization_id", "sales_order_id") where deleted_at is null'
387
+ })
388
+ ], SalesOrderWarehouseAssignment);
389
+ let InventoryMovement = class extends (_i = WmsScopedEntity, OptionalProps, _i) {
390
+ };
391
+ __decorateClass([
392
+ ManyToOne(() => Warehouse, { fieldName: "warehouse_id" })
393
+ ], InventoryMovement.prototype, "warehouse", 2);
394
+ __decorateClass([
395
+ ManyToOne(() => WarehouseLocation, { fieldName: "location_from_id", nullable: true })
396
+ ], InventoryMovement.prototype, "locationFrom", 2);
397
+ __decorateClass([
398
+ ManyToOne(() => WarehouseLocation, { fieldName: "location_to_id", nullable: true })
399
+ ], InventoryMovement.prototype, "locationTo", 2);
400
+ __decorateClass([
401
+ Property({ name: "catalog_variant_id", type: "uuid" })
402
+ ], InventoryMovement.prototype, "catalogVariantId", 2);
403
+ __decorateClass([
404
+ ManyToOne(() => InventoryLot, { fieldName: "lot_id", nullable: true })
405
+ ], InventoryMovement.prototype, "lot", 2);
406
+ __decorateClass([
407
+ Property({ name: "serial_number", type: "text", nullable: true })
408
+ ], InventoryMovement.prototype, "serialNumber", 2);
409
+ __decorateClass([
410
+ Property({ type: "numeric", precision: 16, scale: 4 })
411
+ ], InventoryMovement.prototype, "quantity", 2);
412
+ __decorateClass([
413
+ Property({ type: "text" })
414
+ ], InventoryMovement.prototype, "type", 2);
415
+ __decorateClass([
416
+ Property({ name: "reference_type", type: "text" })
417
+ ], InventoryMovement.prototype, "referenceType", 2);
418
+ __decorateClass([
419
+ Property({ name: "reference_id", type: "uuid" })
420
+ ], InventoryMovement.prototype, "referenceId", 2);
421
+ __decorateClass([
422
+ Property({ name: "performed_by", type: "uuid" })
423
+ ], InventoryMovement.prototype, "performedBy", 2);
424
+ __decorateClass([
425
+ Property({ name: "performed_at", type: Date })
426
+ ], InventoryMovement.prototype, "performedAt", 2);
427
+ __decorateClass([
428
+ Property({ name: "received_at", type: Date })
429
+ ], InventoryMovement.prototype, "receivedAt", 2);
430
+ __decorateClass([
431
+ Property({ type: "text", nullable: true })
432
+ ], InventoryMovement.prototype, "reason", 2);
433
+ __decorateClass([
434
+ Property({ name: "reason_code", type: "text", nullable: true })
435
+ ], InventoryMovement.prototype, "reasonCode", 2);
436
+ __decorateClass([
437
+ Property({ name: "idempotency_key", type: "text", nullable: true })
438
+ ], InventoryMovement.prototype, "idempotencyKey", 2);
439
+ InventoryMovement = __decorateClass([
440
+ Entity({ tableName: "wms_inventory_movements" }),
441
+ Index({ name: "wms_inventory_movements_org_tenant_idx", properties: ["organizationId", "tenantId"] }),
442
+ Index({
443
+ name: "wms_inventory_movements_variant_received_at_idx",
444
+ expression: 'create index "wms_inventory_movements_variant_received_at_idx" on "wms_inventory_movements" ("organization_id", "catalog_variant_id", "received_at" desc) where deleted_at is null'
445
+ }),
446
+ Index({ name: "wms_inventory_movements_reference_idx", properties: ["organizationId", "referenceType", "referenceId"] }),
447
+ Index({
448
+ name: "wms_inventory_movements_warehouse_performed_at_idx",
449
+ expression: 'create index "wms_inventory_movements_warehouse_performed_at_idx" on "wms_inventory_movements" ("organization_id", "warehouse_id", "performed_at" desc) where deleted_at is null'
450
+ }),
451
+ Index({
452
+ name: "wms_inventory_movements_idempotency_unique_idx",
453
+ expression: 'create unique index "wms_inventory_movements_idempotency_unique_idx" on "wms_inventory_movements" ("organization_id", "idempotency_key") where idempotency_key is not null and deleted_at is null'
454
+ })
455
+ ], InventoryMovement);
456
+ export {
457
+ InventoryBalance,
458
+ InventoryLot,
459
+ InventoryMovement,
460
+ InventoryReservation,
461
+ ProductInventoryProfile,
462
+ SalesOrderWarehouseAssignment,
463
+ Warehouse,
464
+ WarehouseLocation,
465
+ WarehouseZone
466
+ };
467
+ //# sourceMappingURL=entities.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/modules/wms/data/entities.ts"],
4
+ "sourcesContent": ["import { Collection, OptionalProps } from '@mikro-orm/core'\nimport {\n Entity,\n Index,\n ManyToOne,\n OneToMany,\n PrimaryKey,\n Property,\n} from '@mikro-orm/decorators/legacy'\nimport type { JsonValue } from '@open-mercato/shared/lib/json'\n\nexport type WarehouseLocationType = 'zone' | 'aisle' | 'rack' | 'bin' | 'slot' | 'dock' | 'staging'\nexport type InventoryStrategy = 'fifo' | 'lifo' | 'fefo'\nexport type InventoryLotStatus = 'available' | 'hold' | 'quarantine' | 'expired'\nexport type InventoryReservationSourceType = 'order' | 'transfer' | 'manual'\nexport type InventoryReservationStatus = 'active' | 'released' | 'fulfilled'\nexport type InventoryMovementType =\n | 'receipt'\n | 'putaway'\n | 'pick'\n | 'pack'\n | 'ship'\n | 'adjust'\n | 'transfer'\n | 'cycle_count'\n | 'return_receive'\nexport type InventoryMovementReferenceType = 'po' | 'so' | 'transfer' | 'manual' | 'qc' | 'rma'\ntype WmsOptionalProps = 'createdAt' | 'updatedAt' | 'deletedAt' | 'metadata'\n\nabstract class WmsScopedEntity {\n @PrimaryKey({ type: 'uuid', defaultRaw: 'gen_random_uuid()' })\n id!: string\n\n @Property({ name: 'organization_id', type: 'uuid' })\n organizationId!: string\n\n @Property({ name: 'tenant_id', type: 'uuid' })\n tenantId!: string\n\n @Property({ type: 'jsonb', nullable: true })\n metadata?: JsonValue | null\n\n @Property({ name: 'created_at', type: Date, onCreate: () => new Date() })\n createdAt: Date = new Date()\n\n @Property({ name: 'updated_at', type: Date, onUpdate: () => new Date() })\n updatedAt: Date = new Date()\n\n @Property({ name: 'deleted_at', type: Date, nullable: true })\n deletedAt?: Date | null\n}\n\n@Entity({ tableName: 'wms_warehouses' })\n@Index({ name: 'wms_warehouses_org_tenant_idx', properties: ['organizationId', 'tenantId'] })\n@Index({\n name: 'wms_warehouses_org_code_unique_idx',\n expression:\n 'create unique index \"wms_warehouses_org_code_unique_idx\" on \"wms_warehouses\" (\"organization_id\", \"code\") where deleted_at is null',\n})\n@Index({\n name: 'wms_warehouses_org_primary_unique_idx',\n expression:\n 'create unique index \"wms_warehouses_org_primary_unique_idx\" on \"wms_warehouses\" (\"organization_id\") where deleted_at is null and is_primary = true',\n})\nexport class Warehouse extends WmsScopedEntity {\n [OptionalProps]?: WmsOptionalProps | 'isActive' | 'isPrimary' | 'addressLine1' | 'city' | 'postalCode' | 'country' | 'timezone'\n\n @Property({ type: 'text' })\n name!: string\n\n @Property({ type: 'text' })\n code!: string\n\n @Property({ name: 'is_active', type: 'boolean', default: true })\n isActive: boolean = true\n\n @Property({ name: 'is_primary', type: 'boolean', default: false })\n isPrimary: boolean = false\n\n @Property({ name: 'address_line1', type: 'text', nullable: true })\n addressLine1?: string | null\n\n @Property({ type: 'text', nullable: true })\n city?: string | null\n\n @Property({ name: 'postal_code', type: 'text', nullable: true })\n postalCode?: string | null\n\n @Property({ type: 'text', nullable: true })\n country?: string | null\n\n @Property({ type: 'text', nullable: true })\n timezone?: string | null\n\n @OneToMany(() => WarehouseZone, (zone) => zone.warehouse)\n zones = new Collection<WarehouseZone>(this)\n\n @OneToMany(() => WarehouseLocation, (location) => location.warehouse)\n locations = new Collection<WarehouseLocation>(this)\n}\n\n@Entity({ tableName: 'wms_warehouse_zones' })\n@Index({ name: 'wms_warehouse_zones_org_tenant_idx', properties: ['organizationId', 'tenantId'] })\n@Index({ name: 'wms_warehouse_zones_warehouse_idx', properties: ['warehouse'] })\n@Index({\n name: 'wms_warehouse_zones_warehouse_code_unique_idx',\n expression:\n 'create unique index \"wms_warehouse_zones_warehouse_code_unique_idx\" on \"wms_warehouse_zones\" (\"warehouse_id\", \"code\") where deleted_at is null',\n})\nexport class WarehouseZone extends WmsScopedEntity {\n [OptionalProps]?: WmsOptionalProps | 'priority'\n\n @ManyToOne(() => Warehouse, { fieldName: 'warehouse_id' })\n warehouse!: Warehouse\n\n @Property({ type: 'text' })\n code!: string\n\n @Property({ type: 'text' })\n name!: string\n\n @Property({ type: 'integer', default: 0 })\n priority: number = 0\n}\n\n@Entity({ tableName: 'wms_warehouse_locations' })\n@Index({ name: 'wms_warehouse_locations_org_tenant_idx', properties: ['organizationId', 'tenantId'] })\n@Index({ name: 'wms_warehouse_locations_warehouse_idx', properties: ['warehouse'] })\n@Index({ name: 'wms_warehouse_locations_parent_idx', properties: ['parent'] })\n@Index({\n name: 'wms_warehouse_locations_warehouse_code_unique_idx',\n expression:\n 'create unique index \"wms_warehouse_locations_warehouse_code_unique_idx\" on \"wms_warehouse_locations\" (\"warehouse_id\", \"code\") where deleted_at is null',\n})\nexport class WarehouseLocation extends WmsScopedEntity {\n [OptionalProps]?: WmsOptionalProps | 'parent' | 'isActive' | 'capacityUnits' | 'capacityWeight' | 'constraints'\n\n @ManyToOne(() => Warehouse, { fieldName: 'warehouse_id' })\n warehouse!: Warehouse\n\n @Property({ type: 'text' })\n code!: string\n\n @Property({ type: 'text' })\n type!: WarehouseLocationType\n\n @ManyToOne(() => WarehouseLocation, { fieldName: 'parent_id', nullable: true })\n parent?: WarehouseLocation | null\n\n @OneToMany(() => WarehouseLocation, (location) => location.parent)\n children = new Collection<WarehouseLocation>(this)\n\n @Property({ name: 'is_active', type: 'boolean', default: true })\n isActive: boolean = true\n\n @Property({ name: 'capacity_units', type: 'numeric', precision: 16, scale: 4, nullable: true })\n capacityUnits?: string | null\n\n @Property({ name: 'capacity_weight', type: 'numeric', precision: 16, scale: 4, nullable: true })\n capacityWeight?: string | null\n\n @Property({ type: 'jsonb', nullable: true })\n constraints?: JsonValue | null\n}\n\n@Entity({ tableName: 'wms_product_inventory_profiles' })\n@Index({ name: 'wms_inventory_profiles_org_tenant_idx', properties: ['organizationId', 'tenantId'] })\n@Index({\n name: 'wms_inventory_profiles_variant_unique_idx',\n expression:\n 'create unique index \"wms_inventory_profiles_variant_unique_idx\" on \"wms_product_inventory_profiles\" (\"organization_id\", \"catalog_variant_id\") where deleted_at is null and catalog_variant_id is not null',\n})\n@Index({\n name: 'wms_inventory_profiles_product_unique_idx',\n expression:\n 'create unique index \"wms_inventory_profiles_product_unique_idx\" on \"wms_product_inventory_profiles\" (\"organization_id\", \"catalog_product_id\") where deleted_at is null and catalog_variant_id is null',\n})\nexport class ProductInventoryProfile extends WmsScopedEntity {\n [OptionalProps]?: WmsOptionalProps | 'catalogVariantId' | 'trackLot' | 'trackSerial' | 'trackExpiration' | 'reorderPoint' | 'safetyStock'\n\n @Property({ name: 'catalog_product_id', type: 'uuid' })\n catalogProductId!: string\n\n @Property({ name: 'catalog_variant_id', type: 'uuid', nullable: true })\n catalogVariantId?: string | null\n\n @Property({ name: 'default_uom', type: 'text' })\n defaultUom!: string\n\n @Property({ name: 'track_lot', type: 'boolean', default: false })\n trackLot: boolean = false\n\n @Property({ name: 'track_serial', type: 'boolean', default: false })\n trackSerial: boolean = false\n\n @Property({ name: 'track_expiration', type: 'boolean', default: false })\n trackExpiration: boolean = false\n\n @Property({ name: 'default_strategy', type: 'text' })\n defaultStrategy!: InventoryStrategy\n\n @Property({ name: 'reorder_point', type: 'numeric', precision: 16, scale: 4, default: '0' })\n reorderPoint: string = '0'\n\n @Property({ name: 'safety_stock', type: 'numeric', precision: 16, scale: 4, default: '0' })\n safetyStock: string = '0'\n}\n\n@Entity({ tableName: 'wms_inventory_lots' })\n@Index({ name: 'wms_inventory_lots_org_tenant_idx', properties: ['organizationId', 'tenantId'] })\n@Index({ name: 'wms_inventory_lots_variant_idx', properties: ['catalogVariantId'] })\n@Index({\n name: 'wms_inventory_lots_variant_lot_unique_idx',\n expression:\n 'create unique index \"wms_inventory_lots_variant_lot_unique_idx\" on \"wms_inventory_lots\" (\"organization_id\", \"catalog_variant_id\", \"lot_number\") where deleted_at is null',\n})\nexport class InventoryLot extends WmsScopedEntity {\n [OptionalProps]?: WmsOptionalProps | 'batchNumber' | 'manufacturedAt' | 'bestBeforeAt' | 'expiresAt'\n\n @Property({ name: 'catalog_variant_id', type: 'uuid' })\n catalogVariantId!: string\n\n @Property({ type: 'text' })\n sku!: string\n\n @Property({ name: 'lot_number', type: 'text' })\n lotNumber!: string\n\n @Property({ name: 'batch_number', type: 'text', nullable: true })\n batchNumber?: string | null\n\n @Property({ name: 'manufactured_at', type: Date, nullable: true })\n manufacturedAt?: Date | null\n\n @Property({ name: 'best_before_at', type: Date, nullable: true })\n bestBeforeAt?: Date | null\n\n @Property({ name: 'expires_at', type: Date, nullable: true })\n expiresAt?: Date | null\n\n @Property({ type: 'text', default: 'available' })\n status: InventoryLotStatus = 'available'\n}\n\n@Entity({ tableName: 'wms_inventory_balances' })\n@Index({ name: 'wms_inventory_balances_org_tenant_idx', properties: ['organizationId', 'tenantId'] })\n@Index({ name: 'wms_inventory_balances_org_warehouse_variant_idx', properties: ['organizationId', 'warehouse', 'catalogVariantId'] })\n@Index({ name: 'wms_inventory_balances_org_location_variant_idx', properties: ['organizationId', 'location', 'catalogVariantId'] })\n@Index({\n name: 'wms_inventory_balances_org_lot_idx',\n expression:\n 'create index \"wms_inventory_balances_org_lot_idx\" on \"wms_inventory_balances\" (\"organization_id\", \"lot_id\") where lot_id is not null and deleted_at is null',\n})\n@Index({\n name: 'wms_inventory_balances_serial_unique_idx',\n expression:\n 'create unique index \"wms_inventory_balances_serial_unique_idx\" on \"wms_inventory_balances\" (\"organization_id\", \"warehouse_id\", \"location_id\", \"catalog_variant_id\", \"serial_number\") where serial_number is not null and deleted_at is null',\n})\nexport class InventoryBalance extends WmsScopedEntity {\n [OptionalProps]?: WmsOptionalProps | 'lot' | 'serialNumber' | 'quantityAvailable'\n\n @ManyToOne(() => Warehouse, { fieldName: 'warehouse_id' })\n warehouse!: Warehouse\n\n @ManyToOne(() => WarehouseLocation, { fieldName: 'location_id' })\n location!: WarehouseLocation\n\n @Property({ name: 'catalog_variant_id', type: 'uuid' })\n catalogVariantId!: string\n\n @ManyToOne(() => InventoryLot, { fieldName: 'lot_id', nullable: true })\n lot?: InventoryLot | null\n\n @Property({ name: 'serial_number', type: 'text', nullable: true })\n serialNumber?: string | null\n\n @Property({ name: 'quantity_on_hand', type: 'numeric', precision: 16, scale: 4, default: '0' })\n quantityOnHand: string = '0'\n\n @Property({ name: 'quantity_reserved', type: 'numeric', precision: 16, scale: 4, default: '0' })\n quantityReserved: string = '0'\n\n @Property({ name: 'quantity_allocated', type: 'numeric', precision: 16, scale: 4, default: '0' })\n quantityAllocated: string = '0'\n\n @Property({\n name: 'quantity_available',\n type: 'numeric',\n precision: 16,\n scale: 4,\n generated: (cols) => `(${cols.quantityOnHand} - ${cols.quantityReserved} - ${cols.quantityAllocated}) stored`,\n hidden: true,\n })\n quantityAvailable!: string\n}\n\n@Entity({ tableName: 'wms_inventory_reservations' })\n@Index({ name: 'wms_inventory_reservations_org_tenant_idx', properties: ['organizationId', 'tenantId'] })\n@Index({ name: 'wms_inventory_reservations_source_idx', properties: ['organizationId', 'sourceType', 'sourceId'] })\n@Index({ name: 'wms_inventory_reservations_status_idx', properties: ['organizationId', 'warehouse', 'catalogVariantId', 'status'] })\n@Index({\n name: 'wms_inventory_reservations_idempotency_unique_idx',\n expression:\n 'create unique index \"wms_inventory_reservations_idempotency_unique_idx\" on \"wms_inventory_reservations\" (\"organization_id\", \"idempotency_key\") where idempotency_key is not null and deleted_at is null and status = \\'active\\'',\n})\nexport class InventoryReservation extends WmsScopedEntity {\n [OptionalProps]?: WmsOptionalProps | 'lot' | 'serialNumber' | 'expiresAt' | 'idempotencyKey'\n\n @ManyToOne(() => Warehouse, { fieldName: 'warehouse_id' })\n warehouse!: Warehouse\n\n @Property({ name: 'catalog_variant_id', type: 'uuid' })\n catalogVariantId!: string\n\n @ManyToOne(() => InventoryLot, { fieldName: 'lot_id', nullable: true })\n lot?: InventoryLot | null\n\n @Property({ name: 'serial_number', type: 'text', nullable: true })\n serialNumber?: string | null\n\n @Property({ type: 'numeric', precision: 16, scale: 4 })\n quantity!: string\n\n @Property({ name: 'source_type', type: 'text' })\n sourceType!: InventoryReservationSourceType\n\n @Property({ name: 'source_id', type: 'uuid' })\n sourceId!: string\n\n @Property({ name: 'expires_at', type: Date, nullable: true })\n expiresAt?: Date | null\n\n @Property({ type: 'text', default: 'active' })\n status: InventoryReservationStatus = 'active'\n\n @Property({ name: 'idempotency_key', type: 'text', nullable: true })\n idempotencyKey?: string | null\n}\n\n@Entity({ tableName: 'wms_sales_order_warehouse_assignments' })\n@Index({ name: 'wms_sowa_org_tenant_idx', properties: ['organizationId', 'tenantId'] })\n@Index({\n name: 'wms_sowa_warehouse_idx',\n expression:\n 'create index \"wms_sowa_warehouse_idx\" on \"wms_sales_order_warehouse_assignments\" (\"warehouse_id\")',\n})\n@Index({\n name: 'wms_sowa_org_order_unique_idx',\n expression:\n 'create unique index \"wms_sowa_org_order_unique_idx\" on \"wms_sales_order_warehouse_assignments\" (\"organization_id\", \"sales_order_id\") where deleted_at is null',\n})\nexport class SalesOrderWarehouseAssignment extends WmsScopedEntity {\n [OptionalProps]?: WmsOptionalProps | 'assignedBy' | 'notes'\n\n @Property({ name: 'sales_order_id', type: 'uuid' })\n salesOrderId!: string\n\n @ManyToOne(() => Warehouse, { fieldName: 'warehouse_id' })\n warehouse!: Warehouse\n\n @Property({ name: 'assigned_by', type: 'uuid', nullable: true })\n assignedBy?: string | null\n\n @Property({ type: 'text', nullable: true })\n notes?: string | null\n}\n\n@Entity({ tableName: 'wms_inventory_movements' })\n@Index({ name: 'wms_inventory_movements_org_tenant_idx', properties: ['organizationId', 'tenantId'] })\n@Index({\n name: 'wms_inventory_movements_variant_received_at_idx',\n expression:\n 'create index \"wms_inventory_movements_variant_received_at_idx\" on \"wms_inventory_movements\" (\"organization_id\", \"catalog_variant_id\", \"received_at\" desc) where deleted_at is null',\n})\n@Index({ name: 'wms_inventory_movements_reference_idx', properties: ['organizationId', 'referenceType', 'referenceId'] })\n@Index({\n name: 'wms_inventory_movements_warehouse_performed_at_idx',\n expression:\n 'create index \"wms_inventory_movements_warehouse_performed_at_idx\" on \"wms_inventory_movements\" (\"organization_id\", \"warehouse_id\", \"performed_at\" desc) where deleted_at is null',\n})\n@Index({\n name: 'wms_inventory_movements_idempotency_unique_idx',\n expression:\n 'create unique index \"wms_inventory_movements_idempotency_unique_idx\" on \"wms_inventory_movements\" (\"organization_id\", \"idempotency_key\") where idempotency_key is not null and deleted_at is null',\n})\nexport class InventoryMovement extends WmsScopedEntity {\n [OptionalProps]?: WmsOptionalProps | 'locationFrom' | 'locationTo' | 'lot' | 'serialNumber' | 'reason' | 'reasonCode' | 'idempotencyKey'\n\n @ManyToOne(() => Warehouse, { fieldName: 'warehouse_id' })\n warehouse!: Warehouse\n\n @ManyToOne(() => WarehouseLocation, { fieldName: 'location_from_id', nullable: true })\n locationFrom?: WarehouseLocation | null\n\n @ManyToOne(() => WarehouseLocation, { fieldName: 'location_to_id', nullable: true })\n locationTo?: WarehouseLocation | null\n\n @Property({ name: 'catalog_variant_id', type: 'uuid' })\n catalogVariantId!: string\n\n @ManyToOne(() => InventoryLot, { fieldName: 'lot_id', nullable: true })\n lot?: InventoryLot | null\n\n @Property({ name: 'serial_number', type: 'text', nullable: true })\n serialNumber?: string | null\n\n @Property({ type: 'numeric', precision: 16, scale: 4 })\n quantity!: string\n\n @Property({ type: 'text' })\n type!: InventoryMovementType\n\n @Property({ name: 'reference_type', type: 'text' })\n referenceType!: InventoryMovementReferenceType\n\n @Property({ name: 'reference_id', type: 'uuid' })\n referenceId!: string\n\n @Property({ name: 'performed_by', type: 'uuid' })\n performedBy!: string\n\n @Property({ name: 'performed_at', type: Date })\n performedAt!: Date\n\n @Property({ name: 'received_at', type: Date })\n receivedAt!: Date\n\n @Property({ type: 'text', nullable: true })\n reason?: string | null\n\n @Property({ name: 'reason_code', type: 'text', nullable: true })\n reasonCode?: string | null\n\n @Property({ name: 'idempotency_key', type: 'text', nullable: true })\n idempotencyKey?: string | null\n}\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }