@openlup/platform 0.26.0 → 0.27.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (520) hide show
  1. package/CHANGELOG.md +138 -218
  2. package/README.md +229 -16
  3. package/dist/commerce/adapters/managed/commerceOmsControlPlane.d.ts +3 -0
  4. package/dist/commerce/adapters/managed/commerceOmsControlPlane.js +71 -0
  5. package/dist/commerce/adapters/managed/commerceOmsMutations.d.ts +10 -0
  6. package/dist/commerce/adapters/managed/commerceOmsMutations.js +119 -0
  7. package/dist/commerce/adapters/managed/commerceOmsPort.d.ts +28 -0
  8. package/dist/commerce/adapters/managed/commerceOmsPort.js +101 -0
  9. package/dist/commerce/adapters/managed/oms/accounting.d.ts +3 -0
  10. package/dist/commerce/adapters/managed/oms/accounting.js +13 -0
  11. package/dist/commerce/adapters/managed/oms/fulfillmentReads.d.ts +17 -0
  12. package/dist/commerce/adapters/managed/oms/fulfillmentReads.js +81 -0
  13. package/dist/commerce/adapters/managed/oms/inboundEvents.d.ts +9 -0
  14. package/dist/commerce/adapters/managed/oms/inboundEvents.js +40 -0
  15. package/dist/commerce/adapters/managed/oms/outboxEvents.d.ts +2 -0
  16. package/dist/commerce/adapters/managed/oms/outboxEvents.js +23 -0
  17. package/dist/commerce/adapters/managed/oms/paymentAttempts.d.ts +3 -0
  18. package/dist/commerce/adapters/managed/oms/paymentAttempts.js +15 -0
  19. package/dist/commerce/adapters/managed/oms/queueSelection.d.ts +12 -0
  20. package/dist/commerce/adapters/managed/oms/queueSelection.js +109 -0
  21. package/dist/commerce/adapters/managed/oms/readProjections.d.ts +18 -0
  22. package/dist/commerce/adapters/managed/oms/readProjections.js +13 -0
  23. package/dist/commerce/adapters/managed/oms/readQueries.d.ts +16 -0
  24. package/dist/commerce/adapters/managed/oms/readQueries.js +276 -0
  25. package/dist/commerce/adapters/managed/oms/types.d.ts +2 -0
  26. package/dist/commerce/adapters/managed/oms/types.js +7 -0
  27. package/dist/commerce/checkoutCommandSchemas.d.ts +89 -0
  28. package/dist/commerce/checkoutCommandSchemas.js +70 -0
  29. package/dist/commerce/checkoutHelpers.d.ts +21 -0
  30. package/dist/commerce/checkoutHelpers.js +29 -0
  31. package/dist/commerce/checkoutResumeSchemas.d.ts +158 -0
  32. package/dist/commerce/checkoutResumeSchemas.js +145 -0
  33. package/dist/commerce/checkoutSchemas.d.ts +158 -0
  34. package/dist/commerce/checkoutSchemas.js +161 -0
  35. package/dist/commerce/commerceReturnsPort.d.ts +97 -0
  36. package/dist/commerce/commerceReturnsPort.js +39 -0
  37. package/dist/commerce/configuratorIntentPersistenceSchemas.d.ts +20 -0
  38. package/dist/commerce/configuratorIntentPersistenceSchemas.js +21 -0
  39. package/dist/commerce/configuratorIntentSchemas.d.ts +63 -0
  40. package/dist/commerce/configuratorIntentSchemas.js +43 -0
  41. package/dist/commerce/contractPrimitives.d.ts +50 -0
  42. package/dist/commerce/contractPrimitives.js +25 -0
  43. package/dist/commerce/contracts/availability.d.ts +23 -0
  44. package/dist/commerce/contracts/availability.js +1 -0
  45. package/dist/commerce/contracts/fulfillmentRecovery.d.ts +25 -0
  46. package/dist/commerce/contracts/fulfillmentRecovery.js +1 -0
  47. package/dist/commerce/contracts/index.d.ts +13 -0
  48. package/dist/commerce/contracts/index.js +1 -0
  49. package/dist/commerce/contracts/intent.d.ts +86 -0
  50. package/dist/commerce/contracts/intent.js +1 -0
  51. package/dist/commerce/contracts/omsTypes.d.ts +1216 -0
  52. package/dist/commerce/contracts/omsTypes.js +1 -0
  53. package/dist/commerce/contracts/order.d.ts +39 -0
  54. package/dist/commerce/contracts/order.js +1 -0
  55. package/dist/commerce/contracts/orderMoney.d.ts +52 -0
  56. package/dist/commerce/contracts/orderMoney.js +1 -0
  57. package/dist/commerce/contracts/ports.d.ts +113 -0
  58. package/dist/commerce/contracts/ports.js +1 -0
  59. package/dist/commerce/contracts/recovery.d.ts +11 -0
  60. package/dist/commerce/contracts/recovery.js +1 -0
  61. package/dist/commerce/contracts/runtimePorts.d.ts +196 -0
  62. package/dist/commerce/contracts/runtimePorts.js +1 -0
  63. package/dist/commerce/contracts/state.d.ts +26 -0
  64. package/dist/commerce/contracts/state.js +43 -0
  65. package/dist/commerce/customerDefaultsSnapshotSchemas.d.ts +51 -0
  66. package/dist/commerce/customerDefaultsSnapshotSchemas.js +106 -0
  67. package/dist/commerce/errors.d.ts +18 -0
  68. package/dist/commerce/errors.js +36 -0
  69. package/dist/commerce/fulfillmentEligibility.d.ts +6 -0
  70. package/dist/commerce/fulfillmentEligibility.js +31 -0
  71. package/dist/commerce/index.d.ts +72 -0
  72. package/dist/commerce/index.js +67 -0
  73. package/dist/commerce/model/customerFulfillmentRecovery.d.ts +40 -0
  74. package/dist/commerce/model/customerFulfillmentRecovery.js +144 -0
  75. package/dist/commerce/model/fulfillmentCancellationEligibility.d.ts +7 -0
  76. package/dist/commerce/model/fulfillmentCancellationEligibility.js +9 -0
  77. package/dist/commerce/model/omsAccountingVisibility.d.ts +12 -0
  78. package/dist/commerce/model/omsAccountingVisibility.js +118 -0
  79. package/dist/commerce/model/omsBillingInvoiceBuyer.d.ts +2 -0
  80. package/dist/commerce/model/omsBillingInvoiceBuyer.js +15 -0
  81. package/dist/commerce/model/omsCurrency.d.ts +4 -0
  82. package/dist/commerce/model/omsCurrency.js +5 -0
  83. package/dist/commerce/model/omsFulfillmentDebug.d.ts +20 -0
  84. package/dist/commerce/model/omsFulfillmentDebug.js +122 -0
  85. package/dist/commerce/model/omsFulfillmentSummary.d.ts +16 -0
  86. package/dist/commerce/model/omsFulfillmentSummary.js +189 -0
  87. package/dist/commerce/model/omsListTotals.d.ts +13 -0
  88. package/dist/commerce/model/omsListTotals.js +32 -0
  89. package/dist/commerce/model/omsOperationalLadder.d.ts +51 -0
  90. package/dist/commerce/model/omsOperationalLadder.js +158 -0
  91. package/dist/commerce/model/omsOrderLineMoney.d.ts +4 -0
  92. package/dist/commerce/model/omsOrderLineMoney.js +25 -0
  93. package/dist/commerce/model/omsPaymentMethodSummary.d.ts +5 -0
  94. package/dist/commerce/model/omsPaymentMethodSummary.js +11 -0
  95. package/dist/commerce/model/omsReadModel.d.ts +43 -0
  96. package/dist/commerce/model/omsReadModel.js +211 -0
  97. package/dist/commerce/model/omsReadModelCommunication.d.ts +3 -0
  98. package/dist/commerce/model/omsReadModelCommunication.js +29 -0
  99. package/dist/commerce/model/omsReadModelHelpers.d.ts +125 -0
  100. package/dist/commerce/model/omsReadModelHelpers.js +212 -0
  101. package/dist/commerce/model/omsReadModelList.d.ts +33 -0
  102. package/dist/commerce/model/omsReadModelList.js +50 -0
  103. package/dist/commerce/model/omsReadModelListSummary.d.ts +3 -0
  104. package/dist/commerce/model/omsReadModelListSummary.js +13 -0
  105. package/dist/commerce/model/omsReadModelPricing.d.ts +5 -0
  106. package/dist/commerce/model/omsReadModelPricing.js +36 -0
  107. package/dist/commerce/model/omsReadModelProjections.d.ts +1 -0
  108. package/dist/commerce/model/omsReadModelProjections.js +1 -0
  109. package/dist/commerce/model/omsReadModelRowCore.d.ts +79 -0
  110. package/dist/commerce/model/omsReadModelRowCore.js +149 -0
  111. package/dist/commerce/model/omsReadModelRows.d.ts +1 -0
  112. package/dist/commerce/model/omsReadModelRows.js +6 -0
  113. package/dist/commerce/offerAvailability.d.ts +18 -0
  114. package/dist/commerce/offerAvailability.js +53 -0
  115. package/dist/commerce/offerAvailabilitySchemas.d.ts +43 -0
  116. package/dist/commerce/offerAvailabilitySchemas.js +42 -0
  117. package/dist/commerce/offerEvidenceSchemas.d.ts +7 -0
  118. package/dist/commerce/offerEvidenceSchemas.js +13 -0
  119. package/dist/commerce/oms/omsContractBase.d.ts +130 -0
  120. package/dist/commerce/oms/omsContractBase.js +86 -0
  121. package/dist/commerce/oms/omsContractReadAuxSchemas.d.ts +222 -0
  122. package/dist/commerce/oms/omsContractReadAuxSchemas.js +123 -0
  123. package/dist/commerce/oms/omsContractReadSchemas.d.ts +2266 -0
  124. package/dist/commerce/oms/omsContractReadSchemas.js +277 -0
  125. package/dist/commerce/oms/omsContractRequests.d.ts +196 -0
  126. package/dist/commerce/oms/omsContractRequests.js +118 -0
  127. package/dist/commerce/oms/omsContracts.d.ts +5 -0
  128. package/dist/commerce/oms/omsContracts.js +4 -0
  129. package/dist/commerce/oms/omsControlPlane.d.ts +275 -0
  130. package/dist/commerce/oms/omsControlPlane.js +72 -0
  131. package/dist/commerce/oms/omsFulfillmentContractSchemas.d.ts +203 -0
  132. package/dist/commerce/oms/omsFulfillmentContractSchemas.js +94 -0
  133. package/dist/commerce/oms/omsFulfillmentDebugSchemas.d.ts +69 -0
  134. package/dist/commerce/oms/omsFulfillmentDebugSchemas.js +33 -0
  135. package/dist/commerce/oms/omsFulfillmentHealthSchemas.d.ts +67 -0
  136. package/dist/commerce/oms/omsFulfillmentHealthSchemas.js +44 -0
  137. package/dist/commerce/oms/omsPorts.d.ts +84 -0
  138. package/dist/commerce/oms/omsPorts.js +148 -0
  139. package/dist/commerce/oms/omsPrimitives.d.ts +5 -0
  140. package/dist/commerce/oms/omsPrimitives.js +3 -0
  141. package/dist/commerce/oms/omsProviderEvidenceSchemas.d.ts +15 -0
  142. package/dist/commerce/oms/omsProviderEvidenceSchemas.js +12 -0
  143. package/dist/commerce/orderDraftErrors.d.ts +13 -0
  144. package/dist/commerce/orderDraftErrors.js +20 -0
  145. package/dist/commerce/orderEmailEligibility.d.ts +54 -0
  146. package/dist/commerce/orderEmailEligibility.js +123 -0
  147. package/dist/commerce/orderEmailLines.d.ts +12 -0
  148. package/dist/commerce/orderEmailLines.js +8 -0
  149. package/dist/commerce/orderFeedbackContracts.d.ts +41 -0
  150. package/dist/commerce/orderFeedbackContracts.js +33 -0
  151. package/dist/commerce/orderMoney.d.ts +6 -0
  152. package/dist/commerce/orderMoney.js +168 -0
  153. package/dist/commerce/orderReviewContracts.d.ts +475 -0
  154. package/dist/commerce/orderReviewContracts.js +94 -0
  155. package/dist/commerce/orderReviewPorts.d.ts +140 -0
  156. package/dist/commerce/orderReviewPorts.js +1 -0
  157. package/dist/commerce/outboxDispatchContracts.d.ts +30 -0
  158. package/dist/commerce/outboxDispatchContracts.js +1 -0
  159. package/dist/commerce/outboxEventSchemas.d.ts +162 -0
  160. package/dist/commerce/outboxEventSchemas.js +164 -0
  161. package/dist/commerce/outboxOrderDraftEmailPorts.d.ts +207 -0
  162. package/dist/commerce/outboxOrderDraftEmailPorts.js +12 -0
  163. package/dist/commerce/paymentContinuation.d.ts +4 -0
  164. package/dist/commerce/paymentContinuation.js +4 -0
  165. package/dist/commerce/ports.d.ts +8 -0
  166. package/dist/commerce/ports.js +1 -0
  167. package/dist/commerce/recoveryDestination.d.ts +3 -0
  168. package/dist/commerce/recoveryDestination.js +17 -0
  169. package/dist/commerce/runtimeErrors.d.ts +8 -0
  170. package/dist/commerce/runtimeErrors.js +16 -0
  171. package/dist/commerce/salesChannelEnvelope.d.ts +20 -0
  172. package/dist/commerce/salesChannelEnvelope.js +7 -0
  173. package/dist/commerce/schemas.d.ts +174 -0
  174. package/dist/commerce/schemas.js +84 -0
  175. package/dist/commerce/server/checkoutCompensation.d.ts +21 -0
  176. package/dist/commerce/server/checkoutCompensation.js +32 -0
  177. package/dist/commerce/server/checkoutConflictClassifiers.d.ts +17 -0
  178. package/dist/commerce/server/checkoutConflictClassifiers.js +38 -0
  179. package/dist/commerce/server/checkoutExpiredRecoveryPolicy.d.ts +38 -0
  180. package/dist/commerce/server/checkoutExpiredRecoveryPolicy.js +85 -0
  181. package/dist/commerce/server/checkoutInvoiceBuyerSnapshot.d.ts +22 -0
  182. package/dist/commerce/server/checkoutInvoiceBuyerSnapshot.js +30 -0
  183. package/dist/commerce/server/checkoutOfferPolicyPort.d.ts +33 -0
  184. package/dist/commerce/server/checkoutOfferPolicyPort.js +49 -0
  185. package/dist/commerce/server/checkoutPaymentContinuationCredential.d.ts +58 -0
  186. package/dist/commerce/server/checkoutPaymentContinuationCredential.js +154 -0
  187. package/dist/commerce/server/checkoutQuoteTypes.d.ts +19 -0
  188. package/dist/commerce/server/checkoutQuoteTypes.js +1 -0
  189. package/dist/commerce/server/checkoutRecoveryOrderPort.d.ts +42 -0
  190. package/dist/commerce/server/checkoutRecoveryOrderPort.js +1 -0
  191. package/dist/commerce/server/checkoutRecoveryToken.d.ts +40 -0
  192. package/dist/commerce/server/checkoutRecoveryToken.js +26 -0
  193. package/dist/commerce/server/checkoutRefusalContinuation.d.ts +24 -0
  194. package/dist/commerce/server/checkoutRefusalContinuation.js +18 -0
  195. package/dist/commerce/server/checkoutRuntimeTypes.d.ts +81 -0
  196. package/dist/commerce/server/checkoutRuntimeTypes.js +1 -0
  197. package/dist/commerce/server/commerceCheckoutCommandExecution.d.ts +60 -0
  198. package/dist/commerce/server/commerceCheckoutCommandExecution.js +136 -0
  199. package/dist/commerce/server/commerceCheckoutCompensation.d.ts +26 -0
  200. package/dist/commerce/server/commerceCheckoutCompensation.js +46 -0
  201. package/dist/commerce/server/commerceCheckoutContinuationTerms.d.ts +50 -0
  202. package/dist/commerce/server/commerceCheckoutContinuationTerms.js +66 -0
  203. package/dist/commerce/server/commerceCheckoutCustomerDefaults.d.ts +18 -0
  204. package/dist/commerce/server/commerceCheckoutCustomerDefaults.js +17 -0
  205. package/dist/commerce/server/commerceCheckoutFailureHandler.d.ts +51 -0
  206. package/dist/commerce/server/commerceCheckoutFailureHandler.js +90 -0
  207. package/dist/commerce/server/commerceCheckoutHandler.d.ts +213 -0
  208. package/dist/commerce/server/commerceCheckoutHandler.js +196 -0
  209. package/dist/commerce/server/commerceCheckoutHandlerAdmission.d.ts +58 -0
  210. package/dist/commerce/server/commerceCheckoutHandlerAdmission.js +94 -0
  211. package/dist/commerce/server/commerceCheckoutHandlerHelpers.d.ts +67 -0
  212. package/dist/commerce/server/commerceCheckoutHandlerHelpers.js +155 -0
  213. package/dist/commerce/server/commerceCheckoutOrchestrationError.d.ts +9 -0
  214. package/dist/commerce/server/commerceCheckoutOrchestrationError.js +14 -0
  215. package/dist/commerce/server/commerceCheckoutPromotionPriceChange.d.ts +47 -0
  216. package/dist/commerce/server/commerceCheckoutPromotionPriceChange.js +43 -0
  217. package/dist/commerce/server/commerceCheckoutProviderPayment.d.ts +34 -0
  218. package/dist/commerce/server/commerceCheckoutProviderPayment.js +37 -0
  219. package/dist/commerce/server/commerceCheckoutQuoteGuard.d.ts +62 -0
  220. package/dist/commerce/server/commerceCheckoutQuoteGuard.js +106 -0
  221. package/dist/commerce/server/commerceCheckoutResume.d.ts +29 -0
  222. package/dist/commerce/server/commerceCheckoutResume.js +81 -0
  223. package/dist/commerce/server/commerceCheckoutResumeGuard.d.ts +54 -0
  224. package/dist/commerce/server/commerceCheckoutResumeGuard.js +138 -0
  225. package/dist/commerce/server/commerceCheckoutSavedPaymentMethod.d.ts +39 -0
  226. package/dist/commerce/server/commerceCheckoutSavedPaymentMethod.js +44 -0
  227. package/dist/commerce/server/commerceCheckoutStartRuntimeFailure.d.ts +7 -0
  228. package/dist/commerce/server/commerceCheckoutStartRuntimeFailure.js +39 -0
  229. package/dist/commerce/server/commerceCheckoutTiming.d.ts +8 -0
  230. package/dist/commerce/server/commerceCheckoutTiming.js +31 -0
  231. package/dist/commerce/server/commerceDiagnostics.d.ts +6 -0
  232. package/dist/commerce/server/commerceDiagnostics.js +31 -0
  233. package/dist/commerce/server/commerceOmsCancelOrderHandler.d.ts +7 -0
  234. package/dist/commerce/server/commerceOmsCancelOrderHandler.js +22 -0
  235. package/dist/commerce/server/commerceOmsControlPlaneHandlers.d.ts +18 -0
  236. package/dist/commerce/server/commerceOmsControlPlaneHandlers.js +60 -0
  237. package/dist/commerce/server/commerceOmsHandlers.d.ts +47 -0
  238. package/dist/commerce/server/commerceOmsHandlers.js +176 -0
  239. package/dist/commerce/server/commerceOmsMarkRefundedHandler.d.ts +7 -0
  240. package/dist/commerce/server/commerceOmsMarkRefundedHandler.js +19 -0
  241. package/dist/commerce/server/commerceOrderDraft.d.ts +24 -0
  242. package/dist/commerce/server/commerceOrderDraft.js +92 -0
  243. package/dist/commerce/server/commercePaidOrderOrchestration.d.ts +131 -0
  244. package/dist/commerce/server/commercePaidOrderOrchestration.js +140 -0
  245. package/dist/commerce/server/commerceProviderAttemptFailure.d.ts +133 -0
  246. package/dist/commerce/server/commerceProviderAttemptFailure.js +175 -0
  247. package/dist/commerce/server/commerceReturnsHandlers.d.ts +41 -0
  248. package/dist/commerce/server/commerceReturnsHandlers.js +100 -0
  249. package/dist/commerce/server/commerceRuntimePort.d.ts +16 -0
  250. package/dist/commerce/server/commerceRuntimePort.js +57 -0
  251. package/dist/commerce/server/commerceRuntimeService.d.ts +98 -0
  252. package/dist/commerce/server/commerceRuntimeService.js +186 -0
  253. package/dist/commerce/server/commerceRuntimeStartResponse.d.ts +37 -0
  254. package/dist/commerce/server/commerceRuntimeStartResponse.js +56 -0
  255. package/dist/commerce/server/commerceStarterOfferGuard.d.ts +55 -0
  256. package/dist/commerce/server/commerceStarterOfferGuard.js +128 -0
  257. package/dist/commerce/server/configuratorIntentPersistence.d.ts +47 -0
  258. package/dist/commerce/server/configuratorIntentPersistence.js +85 -0
  259. package/dist/commerce/server/configuratorIntentPersistenceHandler.d.ts +14 -0
  260. package/dist/commerce/server/configuratorIntentPersistenceHandler.js +42 -0
  261. package/dist/commerce/server/emailRuntime.d.ts +47 -0
  262. package/dist/commerce/server/emailRuntime.js +1 -0
  263. package/dist/commerce/server/handlerSupport.d.ts +68 -0
  264. package/dist/commerce/server/handlerSupport.js +1 -0
  265. package/dist/commerce/server/index.d.ts +178 -0
  266. package/dist/commerce/server/index.js +127 -0
  267. package/dist/commerce/server/offerAvailability.d.ts +21 -0
  268. package/dist/commerce/server/offerAvailability.js +163 -0
  269. package/dist/commerce/server/orderDraftRpcPayload.d.ts +20 -0
  270. package/dist/commerce/server/orderDraftRpcPayload.js +21 -0
  271. package/dist/commerce/server/orderFeedbackSubmit.d.ts +20 -0
  272. package/dist/commerce/server/orderFeedbackSubmit.js +16 -0
  273. package/dist/commerce/server/orderFeedbackTokenCheck.d.ts +17 -0
  274. package/dist/commerce/server/orderFeedbackTokenCheck.js +14 -0
  275. package/dist/commerce/server/orderReviewAdminHandlers.d.ts +47 -0
  276. package/dist/commerce/server/orderReviewAdminHandlers.js +41 -0
  277. package/dist/commerce/server/orderReviewHandlers.d.ts +114 -0
  278. package/dist/commerce/server/orderReviewHandlers.js +42 -0
  279. package/dist/commerce/server/orderReviewLifecycle.d.ts +10 -0
  280. package/dist/commerce/server/orderReviewLifecycle.js +121 -0
  281. package/dist/commerce/server/orderReviewMedia.d.ts +11 -0
  282. package/dist/commerce/server/orderReviewMedia.js +172 -0
  283. package/dist/commerce/server/orderReviewRawUploadHandler.d.ts +40 -0
  284. package/dist/commerce/server/orderReviewRawUploadHandler.js +316 -0
  285. package/dist/commerce/server/outboxCheckoutExpiredEmailHandler.d.ts +14 -0
  286. package/dist/commerce/server/outboxCheckoutExpiredEmailHandler.js +57 -0
  287. package/dist/commerce/server/outboxCheckoutRecoveryEmailHandler.d.ts +13 -0
  288. package/dist/commerce/server/outboxCheckoutRecoveryEmailHandler.js +150 -0
  289. package/dist/commerce/server/outboxDispatchRegistry.d.ts +46 -0
  290. package/dist/commerce/server/outboxDispatchRegistry.js +184 -0
  291. package/dist/commerce/server/outboxDispatchRegistryComposition.d.ts +6 -0
  292. package/dist/commerce/server/outboxDispatchRegistryComposition.js +23 -0
  293. package/dist/commerce/server/outboxOrderDraftEmailHandler.d.ts +14 -0
  294. package/dist/commerce/server/outboxOrderDraftEmailHandler.js +130 -0
  295. package/dist/commerce/server/outboxOrderPaidEmailHandler.d.ts +21 -0
  296. package/dist/commerce/server/outboxOrderPaidEmailHandler.js +93 -0
  297. package/dist/commerce/server/outboxOrderPaidFulfillmentHandler.d.ts +3 -0
  298. package/dist/commerce/server/outboxOrderPaidFulfillmentHandler.js +1 -0
  299. package/dist/commerce/server/outboxOrderPaidFulfillmentPorts.d.ts +3 -0
  300. package/dist/commerce/server/outboxOrderPaidFulfillmentPorts.js +1 -0
  301. package/dist/commerce/server/outboxOrderRefundedEmailHandler.d.ts +13 -0
  302. package/dist/commerce/server/outboxOrderRefundedEmailHandler.js +42 -0
  303. package/dist/commerce/server/outboxPaymentFailedEmailHandler.d.ts +14 -0
  304. package/dist/commerce/server/outboxPaymentFailedEmailHandler.js +65 -0
  305. package/dist/commerce/server/outboxReturnEmailHandlers.d.ts +26 -0
  306. package/dist/commerce/server/outboxReturnEmailHandlers.js +53 -0
  307. package/dist/commerce/server/outboxShipmentDeliveredEmailHandler.d.ts +17 -0
  308. package/dist/commerce/server/outboxShipmentDeliveredEmailHandler.js +52 -0
  309. package/dist/commerce/server/outboxShipmentDispatchedEmailHandler.d.ts +13 -0
  310. package/dist/commerce/server/outboxShipmentDispatchedEmailHandler.js +87 -0
  311. package/dist/commerce/server/outboxShipmentExceptionEmailHandler.d.ts +13 -0
  312. package/dist/commerce/server/outboxShipmentExceptionEmailHandler.js +46 -0
  313. package/dist/commerce/server/referenceCheckoutHandler.d.ts +48 -0
  314. package/dist/commerce/server/referenceCheckoutHandler.js +68 -0
  315. package/dist/commerce/server/reservationSweepPort.d.ts +31 -0
  316. package/dist/commerce/server/reservationSweepPort.js +45 -0
  317. package/dist/commerce/server/starterTermsPort.d.ts +22 -0
  318. package/dist/commerce/server/starterTermsPort.js +1 -0
  319. package/dist/commerce/server/supabaseCommerceReturnsPort.d.ts +13 -0
  320. package/dist/commerce/server/supabaseCommerceReturnsPort.js +56 -0
  321. package/dist/communications/consentPurposeRegistry.d.ts +1 -1
  322. package/dist/communications/newsletterIntegrationContracts.d.ts +5 -5
  323. package/dist/composition/commerceContribution.d.ts +21 -0
  324. package/dist/composition/commerceContribution.js +27 -0
  325. package/dist/composition/index.d.ts +1 -0
  326. package/dist/composition/index.js +1 -0
  327. package/dist/fulfillment/handlerSchemas.d.ts +41 -41
  328. package/dist/fulfillment/index.d.ts +1 -1
  329. package/dist/fulfillment/index.js +1 -1
  330. package/dist/fulfillment/paidHandoff.d.ts +12 -1
  331. package/dist/fulfillment/paidHandoff.js +2 -2
  332. package/dist/fulfillment/providerDispatchWorker.d.ts +4 -4
  333. package/dist/identity/customerContracts.d.ts +2 -2
  334. package/dist/inventory/bindings.d.ts +3 -0
  335. package/dist/inventory/bindings.js +10 -4
  336. package/dist/inventory/index.d.ts +1 -0
  337. package/dist/inventory/index.js +1 -0
  338. package/dist/inventory/managedStockAvailability.d.ts +15 -0
  339. package/dist/inventory/managedStockAvailability.js +16 -0
  340. package/dist/inventory/postgresStockAvailability.js +2 -25
  341. package/dist/inventory/schemas.d.ts +1 -1
  342. package/dist/inventory/stockReadResponse.d.ts +4 -0
  343. package/dist/inventory/stockReadResponse.js +27 -0
  344. package/dist/pricing/browser/index.d.ts +6 -0
  345. package/dist/pricing/browser/index.js +6 -0
  346. package/dist/promotions/adminPromotionsContracts.d.ts +2 -2
  347. package/dist/subscriptions/index.d.ts +3 -2
  348. package/dist/subscriptions/index.js +3 -2
  349. package/package.json +22 -2
  350. package/release-gates.json +63 -8
  351. package/src/commerce/adapters/managed/commerceOmsControlPlane.ts +80 -0
  352. package/src/commerce/adapters/managed/commerceOmsMutations.ts +145 -0
  353. package/src/commerce/adapters/managed/commerceOmsPort.ts +158 -0
  354. package/src/commerce/adapters/managed/oms/accounting.ts +18 -0
  355. package/src/commerce/adapters/managed/oms/fulfillmentReads.ts +82 -0
  356. package/src/commerce/adapters/managed/oms/inboundEvents.ts +45 -0
  357. package/src/commerce/adapters/managed/oms/outboxEvents.ts +30 -0
  358. package/src/commerce/adapters/managed/oms/paymentAttempts.ts +19 -0
  359. package/src/commerce/adapters/managed/oms/queueSelection.ts +132 -0
  360. package/src/commerce/adapters/managed/oms/readProjections.ts +22 -0
  361. package/src/commerce/adapters/managed/oms/readQueries.ts +292 -0
  362. package/src/commerce/adapters/managed/oms/types.ts +9 -0
  363. package/src/commerce/checkoutCommandSchemas.ts +93 -0
  364. package/src/commerce/checkoutHelpers.ts +47 -0
  365. package/src/commerce/checkoutResumeSchemas.ts +164 -0
  366. package/src/commerce/checkoutSchemas.ts +182 -0
  367. package/src/commerce/commerceReturnsPort.ts +67 -0
  368. package/src/commerce/configuratorIntentPersistenceSchemas.ts +26 -0
  369. package/src/commerce/configuratorIntentSchemas.ts +47 -0
  370. package/src/commerce/contractPrimitives.ts +30 -0
  371. package/src/commerce/contracts/availability.ts +21 -0
  372. package/src/commerce/contracts/fulfillmentRecovery.ts +26 -0
  373. package/src/commerce/contracts/index.ts +17 -0
  374. package/src/commerce/contracts/intent.ts +58 -0
  375. package/src/commerce/contracts/omsTypes.ts +1217 -0
  376. package/src/commerce/contracts/order.ts +44 -0
  377. package/src/commerce/contracts/orderMoney.ts +75 -0
  378. package/src/commerce/contracts/ports.ts +124 -0
  379. package/src/commerce/contracts/recovery.ts +24 -0
  380. package/src/commerce/contracts/runtimePorts.ts +201 -0
  381. package/src/commerce/contracts/state.ts +64 -0
  382. package/src/commerce/customerDefaultsSnapshotSchemas.ts +117 -0
  383. package/src/commerce/errors.ts +53 -0
  384. package/src/commerce/fulfillmentEligibility.ts +32 -0
  385. package/src/commerce/index.ts +82 -0
  386. package/src/commerce/model/customerFulfillmentRecovery.ts +185 -0
  387. package/src/commerce/model/fulfillmentCancellationEligibility.ts +18 -0
  388. package/src/commerce/model/omsAccountingVisibility.ts +135 -0
  389. package/src/commerce/model/omsBillingInvoiceBuyer.ts +20 -0
  390. package/src/commerce/model/omsCurrency.ts +8 -0
  391. package/src/commerce/model/omsFulfillmentDebug.ts +157 -0
  392. package/src/commerce/model/omsFulfillmentSummary.ts +225 -0
  393. package/src/commerce/model/omsListTotals.ts +38 -0
  394. package/src/commerce/model/omsOperationalLadder.ts +181 -0
  395. package/src/commerce/model/omsOrderLineMoney.ts +34 -0
  396. package/src/commerce/model/omsPaymentMethodSummary.ts +19 -0
  397. package/src/commerce/model/omsReadModel.ts +302 -0
  398. package/src/commerce/model/omsReadModelCommunication.ts +32 -0
  399. package/src/commerce/model/omsReadModelHelpers.ts +279 -0
  400. package/src/commerce/model/omsReadModelList.ts +90 -0
  401. package/src/commerce/model/omsReadModelListSummary.ts +19 -0
  402. package/src/commerce/model/omsReadModelPricing.ts +57 -0
  403. package/src/commerce/model/omsReadModelProjections.ts +1 -0
  404. package/src/commerce/model/omsReadModelRowCore.ts +193 -0
  405. package/src/commerce/model/omsReadModelRows.ts +7 -0
  406. package/src/commerce/offerAvailability.ts +75 -0
  407. package/src/commerce/offerAvailabilitySchemas.ts +56 -0
  408. package/src/commerce/offerEvidenceSchemas.ts +17 -0
  409. package/src/commerce/oms/omsContractBase.ts +92 -0
  410. package/src/commerce/oms/omsContractReadAuxSchemas.ts +130 -0
  411. package/src/commerce/oms/omsContractReadSchemas.ts +303 -0
  412. package/src/commerce/oms/omsContractRequests.ts +143 -0
  413. package/src/commerce/oms/omsContracts.ts +6 -0
  414. package/src/commerce/oms/omsControlPlane.ts +85 -0
  415. package/src/commerce/oms/omsFulfillmentContractSchemas.ts +113 -0
  416. package/src/commerce/oms/omsFulfillmentDebugSchemas.ts +38 -0
  417. package/src/commerce/oms/omsFulfillmentHealthSchemas.ts +46 -0
  418. package/src/commerce/oms/omsPorts.ts +165 -0
  419. package/src/commerce/oms/omsPrimitives.ts +3 -0
  420. package/src/commerce/oms/omsProviderEvidenceSchemas.ts +13 -0
  421. package/src/commerce/orderDraftErrors.ts +28 -0
  422. package/src/commerce/orderEmailEligibility.ts +131 -0
  423. package/src/commerce/orderEmailLines.ts +22 -0
  424. package/src/commerce/orderFeedbackContracts.ts +47 -0
  425. package/src/commerce/orderMoney.ts +207 -0
  426. package/src/commerce/orderReviewContracts.ts +124 -0
  427. package/src/commerce/orderReviewPorts.ts +94 -0
  428. package/src/commerce/outboxDispatchContracts.ts +30 -0
  429. package/src/commerce/outboxEventSchemas.ts +230 -0
  430. package/src/commerce/outboxOrderDraftEmailPorts.ts +241 -0
  431. package/src/commerce/paymentContinuation.ts +5 -0
  432. package/src/commerce/ports.ts +7 -0
  433. package/src/commerce/recoveryDestination.ts +23 -0
  434. package/src/commerce/runtimeErrors.ts +19 -0
  435. package/src/commerce/salesChannelEnvelope.ts +28 -0
  436. package/src/commerce/schemas.ts +104 -0
  437. package/src/commerce/server/checkoutCompensation.ts +49 -0
  438. package/src/commerce/server/checkoutConflictClassifiers.ts +53 -0
  439. package/src/commerce/server/checkoutExpiredRecoveryPolicy.ts +107 -0
  440. package/src/commerce/server/checkoutInvoiceBuyerSnapshot.ts +36 -0
  441. package/src/commerce/server/checkoutOfferPolicyPort.ts +60 -0
  442. package/src/commerce/server/checkoutPaymentContinuationCredential.ts +222 -0
  443. package/src/commerce/server/checkoutQuoteTypes.ts +9 -0
  444. package/src/commerce/server/checkoutRecoveryOrderPort.ts +40 -0
  445. package/src/commerce/server/checkoutRecoveryToken.ts +63 -0
  446. package/src/commerce/server/checkoutRefusalContinuation.ts +29 -0
  447. package/src/commerce/server/checkoutRuntimeTypes.ts +26 -0
  448. package/src/commerce/server/commerceCheckoutCommandExecution.ts +188 -0
  449. package/src/commerce/server/commerceCheckoutCompensation.ts +66 -0
  450. package/src/commerce/server/commerceCheckoutContinuationTerms.ts +87 -0
  451. package/src/commerce/server/commerceCheckoutCustomerDefaults.ts +24 -0
  452. package/src/commerce/server/commerceCheckoutFailureHandler.ts +144 -0
  453. package/src/commerce/server/commerceCheckoutHandler.ts +269 -0
  454. package/src/commerce/server/commerceCheckoutHandlerAdmission.ts +157 -0
  455. package/src/commerce/server/commerceCheckoutHandlerHelpers.ts +223 -0
  456. package/src/commerce/server/commerceCheckoutOrchestrationError.ts +15 -0
  457. package/src/commerce/server/commerceCheckoutPromotionPriceChange.ts +83 -0
  458. package/src/commerce/server/commerceCheckoutProviderPayment.ts +45 -0
  459. package/src/commerce/server/commerceCheckoutQuoteGuard.ts +172 -0
  460. package/src/commerce/server/commerceCheckoutResume.ts +132 -0
  461. package/src/commerce/server/commerceCheckoutResumeGuard.ts +195 -0
  462. package/src/commerce/server/commerceCheckoutSavedPaymentMethod.ts +85 -0
  463. package/src/commerce/server/commerceCheckoutStartRuntimeFailure.ts +59 -0
  464. package/src/commerce/server/commerceCheckoutTiming.ts +53 -0
  465. package/src/commerce/server/commerceDiagnostics.ts +37 -0
  466. package/src/commerce/server/commerceOmsCancelOrderHandler.ts +43 -0
  467. package/src/commerce/server/commerceOmsControlPlaneHandlers.ts +71 -0
  468. package/src/commerce/server/commerceOmsHandlers.ts +275 -0
  469. package/src/commerce/server/commerceOmsMarkRefundedHandler.ts +39 -0
  470. package/src/commerce/server/commerceOrderDraft.ts +131 -0
  471. package/src/commerce/server/commercePaidOrderOrchestration.ts +275 -0
  472. package/src/commerce/server/commerceProviderAttemptFailure.ts +257 -0
  473. package/src/commerce/server/commerceReturnsHandlers.ts +143 -0
  474. package/src/commerce/server/commerceRuntimePort.ts +75 -0
  475. package/src/commerce/server/commerceRuntimeService.ts +229 -0
  476. package/src/commerce/server/commerceRuntimeStartResponse.ts +76 -0
  477. package/src/commerce/server/commerceStarterOfferGuard.ts +200 -0
  478. package/src/commerce/server/configuratorIntentPersistence.ts +161 -0
  479. package/src/commerce/server/configuratorIntentPersistenceHandler.ts +54 -0
  480. package/src/commerce/server/emailRuntime.ts +30 -0
  481. package/src/commerce/server/handlerSupport.ts +22 -0
  482. package/src/commerce/server/index.ts +181 -0
  483. package/src/commerce/server/offerAvailability.ts +275 -0
  484. package/src/commerce/server/orderDraftRpcPayload.ts +39 -0
  485. package/src/commerce/server/orderFeedbackSubmit.ts +40 -0
  486. package/src/commerce/server/orderFeedbackTokenCheck.ts +28 -0
  487. package/src/commerce/server/orderReviewAdminHandlers.ts +43 -0
  488. package/src/commerce/server/orderReviewHandlers.ts +57 -0
  489. package/src/commerce/server/orderReviewLifecycle.ts +129 -0
  490. package/src/commerce/server/orderReviewMedia.ts +170 -0
  491. package/src/commerce/server/orderReviewRawUploadHandler.ts +300 -0
  492. package/src/commerce/server/outboxCheckoutExpiredEmailHandler.ts +86 -0
  493. package/src/commerce/server/outboxCheckoutRecoveryEmailHandler.ts +188 -0
  494. package/src/commerce/server/outboxDispatchRegistry.ts +269 -0
  495. package/src/commerce/server/outboxDispatchRegistryComposition.ts +31 -0
  496. package/src/commerce/server/outboxOrderDraftEmailHandler.ts +162 -0
  497. package/src/commerce/server/outboxOrderPaidEmailHandler.ts +147 -0
  498. package/src/commerce/server/outboxOrderPaidFulfillmentHandler.ts +4 -0
  499. package/src/commerce/server/outboxOrderPaidFulfillmentPorts.ts +3 -0
  500. package/src/commerce/server/outboxOrderRefundedEmailHandler.ts +58 -0
  501. package/src/commerce/server/outboxPaymentFailedEmailHandler.ts +99 -0
  502. package/src/commerce/server/outboxReturnEmailHandlers.ts +92 -0
  503. package/src/commerce/server/outboxShipmentDeliveredEmailHandler.ts +94 -0
  504. package/src/commerce/server/outboxShipmentDispatchedEmailHandler.ts +112 -0
  505. package/src/commerce/server/outboxShipmentExceptionEmailHandler.ts +73 -0
  506. package/src/commerce/server/referenceCheckoutHandler.ts +87 -0
  507. package/src/commerce/server/reservationSweepPort.ts +67 -0
  508. package/src/commerce/server/starterTermsPort.ts +22 -0
  509. package/src/commerce/server/supabaseCommerceReturnsPort.ts +81 -0
  510. package/src/composition/commerceContribution.ts +35 -0
  511. package/src/composition/index.ts +1 -0
  512. package/src/fulfillment/index.ts +1 -1
  513. package/src/fulfillment/paidHandoff.ts +2 -2
  514. package/src/inventory/bindings.ts +12 -4
  515. package/src/inventory/index.ts +1 -0
  516. package/src/inventory/managedStockAvailability.ts +23 -0
  517. package/src/inventory/postgresStockAvailability.ts +2 -21
  518. package/src/inventory/stockReadResponse.ts +25 -0
  519. package/src/pricing/browser/index.ts +6 -0
  520. package/src/subscriptions/index.ts +3 -2
@@ -22,6 +22,7 @@ export declare const newsletterSyncEventTypeSchema: z.ZodEnum<{
22
22
  }>;
23
23
  export declare const newsletterWebhookEventTypeSchema: z.ZodEnum<{
24
24
  update: "update";
25
+ ignored: "ignored";
25
26
  email_change: "email_change";
26
27
  subscribe: "subscribe";
27
28
  unsubscribe: "unsubscribe";
@@ -29,7 +30,6 @@ export declare const newsletterWebhookEventTypeSchema: z.ZodEnum<{
29
30
  complaint: "complaint";
30
31
  bounce: "bounce";
31
32
  profile_update: "profile_update";
32
- ignored: "ignored";
33
33
  }>;
34
34
  export declare const newsletterProviderCapabilitiesSchema: z.ZodObject<{
35
35
  subscribe: z.ZodBoolean;
@@ -47,6 +47,7 @@ export declare const canonicalNewsletterWebhookEventSchema: z.ZodObject<{
47
47
  providerEventId: z.ZodString;
48
48
  eventType: z.ZodEnum<{
49
49
  update: "update";
50
+ ignored: "ignored";
50
51
  email_change: "email_change";
51
52
  subscribe: "subscribe";
52
53
  unsubscribe: "unsubscribe";
@@ -54,7 +55,6 @@ export declare const canonicalNewsletterWebhookEventSchema: z.ZodObject<{
54
55
  complaint: "complaint";
55
56
  bounce: "bounce";
56
57
  profile_update: "profile_update";
57
- ignored: "ignored";
58
58
  }>;
59
59
  email: z.ZodOptional<z.ZodNullable<z.ZodString>>;
60
60
  remoteProfileId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
@@ -66,8 +66,8 @@ export declare const canonicalNewsletterWebhookEventSchema: z.ZodObject<{
66
66
  explicitOptInEvidence: z.ZodOptional<z.ZodBoolean>;
67
67
  doubleOptInStatus: z.ZodOptional<z.ZodEnum<{
68
68
  unknown: "unknown";
69
- confirmed: "confirmed";
70
69
  pending: "pending";
70
+ confirmed: "confirmed";
71
71
  }>>;
72
72
  occurredAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
73
73
  payload: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
@@ -86,6 +86,7 @@ export declare function createNewsletterIntegrationSchemas<Purpose extends strin
86
86
  providerEventId: z.ZodString;
87
87
  eventType: z.ZodEnum<{
88
88
  update: "update";
89
+ ignored: "ignored";
89
90
  email_change: "email_change";
90
91
  subscribe: "subscribe";
91
92
  unsubscribe: "unsubscribe";
@@ -93,7 +94,6 @@ export declare function createNewsletterIntegrationSchemas<Purpose extends strin
93
94
  complaint: "complaint";
94
95
  bounce: "bounce";
95
96
  profile_update: "profile_update";
96
- ignored: "ignored";
97
97
  }>;
98
98
  email: z.ZodOptional<z.ZodNullable<z.ZodString>>;
99
99
  remoteProfileId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
@@ -101,8 +101,8 @@ export declare function createNewsletterIntegrationSchemas<Purpose extends strin
101
101
  explicitOptInEvidence: z.ZodOptional<z.ZodBoolean>;
102
102
  doubleOptInStatus: z.ZodOptional<z.ZodEnum<{
103
103
  unknown: "unknown";
104
- confirmed: "confirmed";
105
104
  pending: "pending";
105
+ confirmed: "confirmed";
106
106
  }>>;
107
107
  occurredAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
108
108
  payload: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
@@ -0,0 +1,21 @@
1
+ import type { Contribution, RequiredSchema } from "@openlup/core/readiness";
2
+ /** Describe existing selected commerce callables; never install another executor. */
3
+ export declare function createCommerceContribution(input: {
4
+ version: string;
5
+ requiredSchema: RequiredSchema;
6
+ commerce: Readonly<Record<string, ((...args: never[]) => unknown) | null>>;
7
+ handlers: Contribution["handlers"];
8
+ schedules: Contribution["schedules"];
9
+ routes: Contribution["routes"];
10
+ }): {
11
+ contributions: Contribution[];
12
+ ports: {
13
+ [k: string]: ((...args: never[]) => unknown) | null;
14
+ };
15
+ routes: {
16
+ [k: string]: (...args: never[]) => unknown;
17
+ };
18
+ triggers: {
19
+ [k: string]: (...args: never[]) => unknown;
20
+ };
21
+ };
@@ -0,0 +1,27 @@
1
+ /** Describe existing selected commerce callables; never install another executor. */
2
+ export function createCommerceContribution(input) {
3
+ for (const [kind, names] of [
4
+ ["handler", input.handlers.map(handler => handler.eventType)],
5
+ ["schedule", input.schedules.map(schedule => schedule.id)],
6
+ ["route", input.routes.map(route => route.id)],
7
+ ]) {
8
+ if (new Set(names).size !== names.length)
9
+ throw new Error(`commerce_duplicate_${kind}`);
10
+ }
11
+ const contribution = {
12
+ manifest: {
13
+ name: "@openlup/platform", version: input.version, kind: "rail",
14
+ module: { id: "commerce", kind: "capability", provides: ["./commerce", "./commerce/contracts", "./commerce/server"], dependsOn: [] },
15
+ emits: [], handles: input.handlers.map(handler => handler.eventType),
16
+ schedules: input.schedules.map(({ id, cadenceSeconds }) => ({ id, cadenceSeconds })), env: [],
17
+ requiredPorts: Object.keys(input.commerce), routes: input.routes.map(route => route.id), requiredSchema: input.requiredSchema,
18
+ },
19
+ handlers: input.handlers.map(({ eventType, timeoutMs }) => Object.freeze({ eventType, timeoutMs })), schedules: input.schedules, routes: input.routes,
20
+ };
21
+ return {
22
+ contributions: [contribution],
23
+ ports: Object.fromEntries(Object.entries(input.commerce).filter(([, fn]) => typeof fn === "function").map(([name, fn]) => [`@openlup/platform/commerce:${name}`, fn])),
24
+ routes: Object.fromEntries(input.routes.map(route => [`@openlup/platform/commerce:${route.id}`, route.handle])),
25
+ triggers: Object.fromEntries(input.schedules.map(schedule => [`@openlup/platform/commerce:${schedule.id}`, schedule.run])),
26
+ };
27
+ }
@@ -6,3 +6,4 @@ export { createInventoryContribution } from "./inventoryContribution.js";
6
6
  export { createShippingContribution } from "./shippingContribution.js";
7
7
  export { createFulfillmentContribution } from "./fulfillmentContribution.js";
8
8
  export { createSubscriptionContribution } from "./subscriptionContribution.js";
9
+ export { createCommerceContribution } from "./commerceContribution.js";
@@ -7,3 +7,4 @@ export { createInventoryContribution } from "./inventoryContribution.js";
7
7
  export { createShippingContribution } from "./shippingContribution.js";
8
8
  export { createFulfillmentContribution } from "./fulfillmentContribution.js";
9
9
  export { createSubscriptionContribution } from "./subscriptionContribution.js";
10
+ export { createCommerceContribution } from "./commerceContribution.js";
@@ -5,14 +5,14 @@ export declare const COMMERCE_FULFILLMENT_OPERATION_TYPES: readonly ["created",
5
5
  export declare const COMMERCE_FULFILLMENT_PROVIDER_ATTEMPT_STATUSES: readonly ["recorded", "succeeded", "failed"];
6
6
  export declare const commerceFulfillmentStatusSchema: z.ZodEnum<{
7
7
  created: "created";
8
- exception: "exception";
9
- delivered: "delivered";
10
8
  cancelled: "cancelled";
9
+ delivered: "delivered";
11
10
  packed: "packed";
12
- in_transit: "in_transit";
13
11
  label_pending: "label_pending";
14
12
  label_created: "label_created";
15
13
  handed_over: "handed_over";
14
+ in_transit: "in_transit";
15
+ exception: "exception";
16
16
  }>;
17
17
  export declare const commerceFulfillmentOperationTypeSchema: z.ZodEnum<{
18
18
  created: "created";
@@ -25,27 +25,27 @@ export declare const commerceFulfillmentOperationTypeSchema: z.ZodEnum<{
25
25
  }>;
26
26
  export declare const commerceFulfillmentProviderAttemptStatusSchema: z.ZodEnum<{
27
27
  failed: "failed";
28
- recorded: "recorded";
29
28
  succeeded: "succeeded";
29
+ recorded: "recorded";
30
30
  }>;
31
31
  export declare const commerceFulfillmentPaymentStatusSchema: z.ZodEnum<{
32
32
  expired: "expired";
33
33
  created: "created";
34
34
  failed: "failed";
35
35
  cancelled: "cancelled";
36
- succeeded: "succeeded";
37
36
  refunded: "refunded";
37
+ not_started: "not_started";
38
38
  requires_action: "requires_action";
39
39
  processing: "processing";
40
40
  partially_refunded: "partially_refunded";
41
41
  disputed: "disputed";
42
- not_started: "not_started";
42
+ succeeded: "succeeded";
43
43
  }>;
44
44
  export declare const commerceFulfillmentInventoryStatusSchema: z.ZodEnum<{
45
45
  expired: "expired";
46
- missing: "missing";
47
- reserved: "reserved";
48
46
  not_checked: "not_checked";
47
+ reserved: "reserved";
48
+ missing: "missing";
49
49
  released: "released";
50
50
  consumed: "consumed";
51
51
  review_required: "review_required";
@@ -86,22 +86,22 @@ export declare const commerceFulfillmentPaymentSummarySchema: z.ZodObject<{
86
86
  created: "created";
87
87
  failed: "failed";
88
88
  cancelled: "cancelled";
89
- succeeded: "succeeded";
90
89
  refunded: "refunded";
90
+ not_started: "not_started";
91
91
  requires_action: "requires_action";
92
92
  processing: "processing";
93
93
  partially_refunded: "partially_refunded";
94
94
  disputed: "disputed";
95
- not_started: "not_started";
95
+ succeeded: "succeeded";
96
96
  }>;
97
97
  providerPaymentId: z.ZodNullable<z.ZodString>;
98
98
  }, z.core.$strict>;
99
99
  export declare const commerceFulfillmentInventorySummarySchema: z.ZodObject<{
100
100
  status: z.ZodEnum<{
101
101
  expired: "expired";
102
- missing: "missing";
103
- reserved: "reserved";
104
102
  not_checked: "not_checked";
103
+ reserved: "reserved";
104
+ missing: "missing";
105
105
  released: "released";
106
106
  consumed: "consumed";
107
107
  review_required: "review_required";
@@ -150,14 +150,14 @@ export declare const commerceFulfillmentOrderSchema: z.ZodObject<{
150
150
  clientId: z.ZodNullable<z.ZodGUID>;
151
151
  status: z.ZodEnum<{
152
152
  created: "created";
153
- exception: "exception";
154
- delivered: "delivered";
155
153
  cancelled: "cancelled";
154
+ delivered: "delivered";
156
155
  packed: "packed";
157
- in_transit: "in_transit";
158
156
  label_pending: "label_pending";
159
157
  label_created: "label_created";
160
158
  handed_over: "handed_over";
159
+ in_transit: "in_transit";
160
+ exception: "exception";
161
161
  }>;
162
162
  providerKind: z.ZodNullable<z.ZodString>;
163
163
  providerTrackingId: z.ZodNullable<z.ZodString>;
@@ -188,22 +188,22 @@ export declare const commerceFulfillmentOrderSchema: z.ZodObject<{
188
188
  created: "created";
189
189
  failed: "failed";
190
190
  cancelled: "cancelled";
191
- succeeded: "succeeded";
192
191
  refunded: "refunded";
192
+ not_started: "not_started";
193
193
  requires_action: "requires_action";
194
194
  processing: "processing";
195
195
  partially_refunded: "partially_refunded";
196
196
  disputed: "disputed";
197
- not_started: "not_started";
197
+ succeeded: "succeeded";
198
198
  }>;
199
199
  providerPaymentId: z.ZodNullable<z.ZodString>;
200
200
  }, z.core.$strict>;
201
201
  inventory: z.ZodObject<{
202
202
  status: z.ZodEnum<{
203
203
  expired: "expired";
204
- missing: "missing";
205
- reserved: "reserved";
206
204
  not_checked: "not_checked";
205
+ reserved: "reserved";
206
+ missing: "missing";
207
207
  released: "released";
208
208
  consumed: "consumed";
209
209
  review_required: "review_required";
@@ -254,14 +254,14 @@ export declare const adminCommerceFulfillmentOrdersListRequestSchema: z.ZodObjec
254
254
  pageSize: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
255
255
  status: z.ZodOptional<z.ZodEnum<{
256
256
  created: "created";
257
- exception: "exception";
258
- delivered: "delivered";
259
257
  cancelled: "cancelled";
258
+ delivered: "delivered";
260
259
  packed: "packed";
261
- in_transit: "in_transit";
262
260
  label_pending: "label_pending";
263
261
  label_created: "label_created";
264
262
  handed_over: "handed_over";
263
+ in_transit: "in_transit";
264
+ exception: "exception";
265
265
  }>>;
266
266
  }, z.core.$strict>;
267
267
  export declare const adminCommerceFulfillmentOrderDetailRequestSchema: z.ZodObject<{
@@ -279,8 +279,8 @@ export declare const adminCommerceFulfillmentRecordProviderAttemptRequestSchema:
279
279
  providerKind: z.ZodString;
280
280
  status: z.ZodEnum<{
281
281
  failed: "failed";
282
- recorded: "recorded";
283
282
  succeeded: "succeeded";
283
+ recorded: "recorded";
284
284
  }>;
285
285
  requestPayload: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
286
286
  responsePayload: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
@@ -306,9 +306,9 @@ export declare const adminCommerceFulfillmentTrackingEventRequestSchema: z.ZodOb
306
306
  idempotencyKey: z.ZodString;
307
307
  fulfillmentOrderId: z.ZodGUID;
308
308
  status: z.ZodEnum<{
309
- exception: "exception";
310
309
  delivered: "delivered";
311
310
  in_transit: "in_transit";
311
+ exception: "exception";
312
312
  }>;
313
313
  providerTrackingId: z.ZodOptional<z.ZodString>;
314
314
  rawEvent: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
@@ -328,14 +328,14 @@ export declare const adminCommerceFulfillmentOrdersListResponseSchema: z.ZodObje
328
328
  clientId: z.ZodNullable<z.ZodGUID>;
329
329
  status: z.ZodEnum<{
330
330
  created: "created";
331
- exception: "exception";
332
- delivered: "delivered";
333
331
  cancelled: "cancelled";
332
+ delivered: "delivered";
334
333
  packed: "packed";
335
- in_transit: "in_transit";
336
334
  label_pending: "label_pending";
337
335
  label_created: "label_created";
338
336
  handed_over: "handed_over";
337
+ in_transit: "in_transit";
338
+ exception: "exception";
339
339
  }>;
340
340
  providerKind: z.ZodNullable<z.ZodString>;
341
341
  providerTrackingId: z.ZodNullable<z.ZodString>;
@@ -366,22 +366,22 @@ export declare const adminCommerceFulfillmentOrdersListResponseSchema: z.ZodObje
366
366
  created: "created";
367
367
  failed: "failed";
368
368
  cancelled: "cancelled";
369
- succeeded: "succeeded";
370
369
  refunded: "refunded";
370
+ not_started: "not_started";
371
371
  requires_action: "requires_action";
372
372
  processing: "processing";
373
373
  partially_refunded: "partially_refunded";
374
374
  disputed: "disputed";
375
- not_started: "not_started";
375
+ succeeded: "succeeded";
376
376
  }>;
377
377
  providerPaymentId: z.ZodNullable<z.ZodString>;
378
378
  }, z.core.$strict>;
379
379
  inventory: z.ZodObject<{
380
380
  status: z.ZodEnum<{
381
381
  expired: "expired";
382
- missing: "missing";
383
- reserved: "reserved";
384
382
  not_checked: "not_checked";
383
+ reserved: "reserved";
384
+ missing: "missing";
385
385
  released: "released";
386
386
  consumed: "consumed";
387
387
  review_required: "review_required";
@@ -439,14 +439,14 @@ export declare const adminCommerceFulfillmentOrderDetailResponseSchema: z.ZodObj
439
439
  clientId: z.ZodNullable<z.ZodGUID>;
440
440
  status: z.ZodEnum<{
441
441
  created: "created";
442
- exception: "exception";
443
- delivered: "delivered";
444
442
  cancelled: "cancelled";
443
+ delivered: "delivered";
445
444
  packed: "packed";
446
- in_transit: "in_transit";
447
445
  label_pending: "label_pending";
448
446
  label_created: "label_created";
449
447
  handed_over: "handed_over";
448
+ in_transit: "in_transit";
449
+ exception: "exception";
450
450
  }>;
451
451
  providerKind: z.ZodNullable<z.ZodString>;
452
452
  providerTrackingId: z.ZodNullable<z.ZodString>;
@@ -477,22 +477,22 @@ export declare const adminCommerceFulfillmentOrderDetailResponseSchema: z.ZodObj
477
477
  created: "created";
478
478
  failed: "failed";
479
479
  cancelled: "cancelled";
480
- succeeded: "succeeded";
481
480
  refunded: "refunded";
481
+ not_started: "not_started";
482
482
  requires_action: "requires_action";
483
483
  processing: "processing";
484
484
  partially_refunded: "partially_refunded";
485
485
  disputed: "disputed";
486
- not_started: "not_started";
486
+ succeeded: "succeeded";
487
487
  }>;
488
488
  providerPaymentId: z.ZodNullable<z.ZodString>;
489
489
  }, z.core.$strict>;
490
490
  inventory: z.ZodObject<{
491
491
  status: z.ZodEnum<{
492
492
  expired: "expired";
493
- missing: "missing";
494
- reserved: "reserved";
495
493
  not_checked: "not_checked";
494
+ reserved: "reserved";
495
+ missing: "missing";
496
496
  released: "released";
497
497
  consumed: "consumed";
498
498
  review_required: "review_required";
@@ -545,14 +545,14 @@ export declare const adminCommerceFulfillmentMutationResponseSchema: z.ZodObject
545
545
  orderId: z.ZodGUID;
546
546
  status: z.ZodEnum<{
547
547
  created: "created";
548
- exception: "exception";
549
- delivered: "delivered";
550
548
  cancelled: "cancelled";
549
+ delivered: "delivered";
551
550
  packed: "packed";
552
- in_transit: "in_transit";
553
551
  label_pending: "label_pending";
554
552
  label_created: "label_created";
555
553
  handed_over: "handed_over";
554
+ in_transit: "in_transit";
555
+ exception: "exception";
556
556
  }>;
557
557
  replayed: z.ZodBoolean;
558
558
  }, z.core.$strict>;
@@ -1,7 +1,7 @@
1
1
  export { FULFILLMENT_STATUS_MAP, CANONICAL_LOCAL_FULFILLMENT_STATUSES, CUSTOMER_STEP_SEQUENCE, canonicalStatusToken, stepForToken, customerStepFromSignals, phaseIndexForStep, stepLabelKey, timelineLabelForStep, trackingPhaseKeyForStep, stepUsesTruckIcon } from "./statusMap.js";
2
2
  export { parseFulfillmentFact, parseFulfillmentTransitionConflict } from "./normalizedFulfillmentFacts.js";
3
3
  export { readFulfillmentCapabilities } from "./providerCapabilities.js";
4
- export { createOutboxOrderPaidFulfillmentHandler } from "./paidHandoff.js";
4
+ export { createOutboxOrderPaidFulfillmentHandler, outboxOrderPaidFulfillmentDescriptor, parseOutboxPayload } from "./paidHandoff.js";
5
5
  export { collectPaidFulfillmentRecoveryCandidates } from "./paidFulfillmentRecovery.js";
6
6
  export { runFulfillmentDispatchWorker } from "./providerDispatchWorker.js";
7
7
  export { createFulfillmentCommandLedger } from "./providerCommandLedger.js";
@@ -1,7 +1,7 @@
1
1
  export { FULFILLMENT_STATUS_MAP, CANONICAL_LOCAL_FULFILLMENT_STATUSES, CUSTOMER_STEP_SEQUENCE, canonicalStatusToken, stepForToken, customerStepFromSignals, phaseIndexForStep, stepLabelKey, timelineLabelForStep, trackingPhaseKeyForStep, stepUsesTruckIcon } from "./statusMap.js";
2
2
  export { parseFulfillmentFact, parseFulfillmentTransitionConflict } from "./normalizedFulfillmentFacts.js";
3
3
  export { readFulfillmentCapabilities } from "./providerCapabilities.js";
4
- export { createOutboxOrderPaidFulfillmentHandler } from "./paidHandoff.js";
4
+ export { createOutboxOrderPaidFulfillmentHandler, outboxOrderPaidFulfillmentDescriptor, parseOutboxPayload } from "./paidHandoff.js";
5
5
  export { collectPaidFulfillmentRecoveryCandidates } from "./paidFulfillmentRecovery.js";
6
6
  export { runFulfillmentDispatchWorker } from "./providerDispatchWorker.js";
7
7
  export { createFulfillmentCommandLedger } from "./providerCommandLedger.js";
@@ -1,5 +1,9 @@
1
- import type { OutboxHandler } from "@openlup/core/outbox";
1
+ import type { OutboxHandler, OutboxHandlerOutcome } from "@openlup/core/outbox";
2
2
  import type { OrderPaidFulfillmentPort } from "./paidHandoffPorts.js";
3
+ export declare const outboxOrderPaidFulfillmentDescriptor: Readonly<{
4
+ eventType: "commerce.order.paid";
5
+ timeoutMs: 15000;
6
+ }>;
3
7
  interface OrderPaidRiskAssessmentPort {
4
8
  assessPaidOrder(input: {
5
9
  orderUuid: string;
@@ -24,4 +28,11 @@ export declare function createOutboxOrderPaidFulfillmentHandler(deps: {
24
28
  riskPort?: OrderPaidRiskAssessmentPort;
25
29
  isRiskEnabled?: () => boolean;
26
30
  }): OutboxHandler<AbortSignal>;
31
+ export declare function parseOutboxPayload<T>(schema: import("zod").ZodType<T>, payload: unknown): {
32
+ ok: true;
33
+ data: T;
34
+ } | {
35
+ ok: false;
36
+ outcome: OutboxHandlerOutcome;
37
+ };
27
38
  export {};
@@ -1,7 +1,7 @@
1
1
  import { z } from "zod";
2
2
  const COMMERCE_ORDER_PAID_EVENT_TYPE = "commerce.order.paid";
3
3
  const HANDLER_TIMEOUT_MS = 15_000;
4
- const outboxOrderPaidFulfillmentDescriptor = Object.freeze({
4
+ export const outboxOrderPaidFulfillmentDescriptor = Object.freeze({
5
5
  eventType: COMMERCE_ORDER_PAID_EVENT_TYPE, timeoutMs: HANDLER_TIMEOUT_MS,
6
6
  });
7
7
  // Frozen minimal parse: validate only the orderUuid forwarded to the fulfillment
@@ -77,7 +77,7 @@ export function createOutboxOrderPaidFulfillmentHandler(deps) {
77
77
  };
78
78
  }
79
79
  function truncateReason(value) { return value.length <= 300 ? value : `${value.slice(0, 300)}…`; }
80
- function parseOutboxPayload(schema, payload) {
80
+ export function parseOutboxPayload(schema, payload) {
81
81
  const parsed = schema.safeParse(payload);
82
82
  if (parsed.success)
83
83
  return { ok: true, data: parsed.data };
@@ -33,7 +33,7 @@ export declare function runFulfillmentDispatchWorker(input: {
33
33
  skipped: boolean;
34
34
  checked: number;
35
35
  updated: number;
36
- mode: "shadow" | "stage" | "live";
36
+ mode: "stage" | "shadow" | "live";
37
37
  replayed: number;
38
38
  providerCalls: number;
39
39
  readBacks: number;
@@ -51,7 +51,7 @@ export declare function runFulfillmentDispatchWorker(input: {
51
51
  skipped: boolean;
52
52
  checked: number;
53
53
  updated: number;
54
- mode: "shadow" | "stage" | "live";
54
+ mode: "stage" | "shadow" | "live";
55
55
  replayed: number;
56
56
  providerCalls: number;
57
57
  readBacks: number;
@@ -62,7 +62,7 @@ export declare function runFulfillmentDispatchWorker(input: {
62
62
  checked: number;
63
63
  updated: number;
64
64
  failures: number;
65
- mode: "shadow" | "stage" | "live";
65
+ mode: "stage" | "shadow" | "live";
66
66
  replayed: number;
67
67
  providerCalls: number;
68
68
  readBacks: number;
@@ -74,7 +74,7 @@ export declare function runFulfillmentDispatchWorker(input: {
74
74
  checked: number;
75
75
  updated: number;
76
76
  failures: number;
77
- mode: "shadow" | "stage" | "live";
77
+ mode: "stage" | "shadow" | "live";
78
78
  replayed: number;
79
79
  providerCalls: number;
80
80
  readBacks: number;
@@ -1,9 +1,9 @@
1
1
  import { z } from "zod";
2
2
  export declare const customerLifecycleStageSchema: z.ZodEnum<{
3
3
  inactive: "inactive";
4
+ customer: "customer";
4
5
  lead: "lead";
5
6
  tester: "tester";
6
- customer: "customer";
7
7
  }>;
8
8
  export declare const customerMeRequestSchema: z.ZodObject<{}, z.core.$strict>;
9
9
  export declare const customerMeResponseSchema: z.ZodObject<{
@@ -13,9 +13,9 @@ export declare const customerMeResponseSchema: z.ZodObject<{
13
13
  lastName: z.ZodNullable<z.ZodString>;
14
14
  lifecycleStage: z.ZodEnum<{
15
15
  inactive: "inactive";
16
+ customer: "customer";
16
17
  lead: "lead";
17
18
  tester: "tester";
18
- customer: "customer";
19
19
  }>;
20
20
  subscriptions: z.ZodOptional<z.ZodArray<z.ZodObject<{
21
21
  subscriptionId: z.ZodGUID;
@@ -1,3 +1,4 @@
1
+ import { type ManagedStockRpc } from "./managedStockAvailability.js";
1
2
  import type { z } from "zod";
2
3
  import type { InventoryMutationPort, InventoryReadPort } from "./ports.js";
3
4
  import type { NewPurchaseStockReadPort } from "./newPurchaseStockAvailability.js";
@@ -17,6 +18,8 @@ export interface InventoryBindingDependencies {
17
18
  mutationPort: InventoryMutationPort;
18
19
  } | null;
19
20
  newPurchaseStockReadPort?: NewPurchaseStockReadPort | null;
21
+ stockSourceKey?: string;
22
+ stockRpc?: ManagedStockRpc;
20
23
  now?: () => string;
21
24
  }
22
25
  export interface InventoryBindings {
@@ -1,4 +1,6 @@
1
+ import { createManagedStockAvailability } from "./managedStockAvailability.js";
1
2
  import { createPostgresAdminInventoryPort } from "./adminInventory.js";
3
+ import { createPostgresStockAvailability } from "./postgresStockAvailability.js";
2
4
  import { createInventorySubscriptionForecastResponseSchema } from "./schemas.js";
3
5
  /** Select one store only. Factories declare bindings, never discover or activate a host. */
4
6
  export function createInventoryBindings(deps) {
@@ -9,24 +11,28 @@ export function createInventoryBindings(deps) {
9
11
  if (!deps.provider?.providerSchema?.safeParse(deps.provider.stockMasterProvider).success)
10
12
  return refused("inventory_provider_mismatch");
11
13
  let readPort, mutationPort;
14
+ let stockRead;
12
15
  if (deps.dataKind === "postgres") {
13
16
  if (!deps.executor || typeof deps.executor.query !== "function")
14
17
  return refused("inventory_executor_required");
15
18
  readPort = mutationPort = createPostgresAdminInventoryPort(deps.executor, deps.provider, deps.now);
19
+ stockRead = deps.stockSourceKey?.trim()
20
+ ? createPostgresStockAvailability(deps.executor, { sourceKey: deps.stockSourceKey, now: deps.now ?? (() => new Date().toISOString()) }).readPort
21
+ : null;
16
22
  }
17
23
  else if (deps.dataKind === "supabase") {
18
24
  const store = deps.createManagedStore?.(deps.provider);
19
25
  if (!store)
20
26
  return refused("inventory_managed_store_required");
21
27
  ({ readPort, mutationPort } = store);
28
+ stockRead = deps.newPurchaseStockReadPort ?? (deps.stockRpc
29
+ ? createManagedStockAvailability(deps.stockRpc, { now: deps.now ?? (() => new Date().toISOString()) }) : null);
22
30
  }
23
31
  else
24
32
  return refused("inventory_store_incompatible");
25
33
  if (![readPort?.listStock, readPort?.listReservations, readPort?.checkAtp, readPort?.forecastSubscriptions, mutationPort?.adjustStock].every(fn => typeof fn === "function"))
26
34
  return refused("inventory_store_incompatible");
27
35
  const responseSchema = createInventorySubscriptionForecastResponseSchema(deps.provider.providerSchema);
28
- const native = deps.dataKind === "postgres";
29
- const stockRead = native ? null : deps.newPurchaseStockReadPort;
30
36
  const newPurchaseStockReadPort = typeof stockRead?.read === "function" ? stockRead : null;
31
37
  return {
32
38
  readPort: {
@@ -38,8 +44,8 @@ export function createInventoryBindings(deps) {
38
44
  mutationPort, newPurchaseStockReadPort,
39
45
  readiness: { ready: true, reason: null },
40
46
  unsupported: {
41
- newPurchaseStockRead: native ? "inventory_native_new_purchase_stock_read_unsupported"
42
- : newPurchaseStockReadPort ? null : "inventory_new_purchase_stock_reader_required",
47
+ newPurchaseStockRead: newPurchaseStockReadPort ? null : deps.dataKind === "postgres"
48
+ ? "inventory_stock_source_key_required" : "inventory_new_purchase_stock_reader_required",
43
49
  },
44
50
  };
45
51
  }
@@ -14,3 +14,4 @@ export { INVENTORY_MIGRATIONS } from "./sql.js";
14
14
  export { createInventoryBindings, type InventoryBindingDependencies, type InventoryBindings } from "./bindings.js";
15
15
  export { createPostgresStockAvailability } from "./postgresStockAvailability.js";
16
16
  export type { NativeStockPromise } from "./postgresStockAvailability.js";
17
+ export { createManagedStockAvailability, type ManagedStockRpc } from "./managedStockAvailability.js";
@@ -10,3 +10,4 @@ export { calculateSubscriptionForecastSkus, calculateSubscriptionForecastTotals
10
10
  export { INVENTORY_MIGRATIONS } from "./sql.js";
11
11
  export { createInventoryBindings } from "./bindings.js";
12
12
  export { createPostgresStockAvailability } from "./postgresStockAvailability.js";
13
+ export { createManagedStockAvailability } from "./managedStockAvailability.js";
@@ -0,0 +1,15 @@
1
+ import type { NewPurchaseStockReadPort } from "./newPurchaseStockAvailability.js";
2
+ /** Minimal service-role RPC seam; transport and credentials remain host-owned. */
3
+ export interface ManagedStockRpc {
4
+ rpc(name: string, args: Record<string, unknown>): PromiseLike<{
5
+ data: unknown;
6
+ error: {
7
+ message: string;
8
+ code?: string;
9
+ } | null;
10
+ }>;
11
+ }
12
+ /** Read-only managed ATP preview with fixed subscription priority. */
13
+ export declare function createManagedStockAvailability(client: ManagedStockRpc, options: {
14
+ now: () => string;
15
+ }): NewPurchaseStockReadPort;
@@ -0,0 +1,16 @@
1
+ import { parseStockReadResponse } from "./stockReadResponse.js";
2
+ /** Read-only managed ATP preview with fixed subscription priority. */
3
+ export function createManagedStockAvailability(client, options) {
4
+ return {
5
+ async read(input) {
6
+ if (input.horizonDays !== 14 || input.excludeOrderId !== null)
7
+ throw new Error("managed_stock_read_options_unsupported");
8
+ if (!input.skus.length)
9
+ return new Map();
10
+ const { data, error } = await client.rpc("inventory_new_purchase_stock_read", { p_skus: input.skus, p_as_of: options.now() });
11
+ if (error)
12
+ throw error;
13
+ return parseStockReadResponse(data);
14
+ },
15
+ };
16
+ }