@fiado/type-kit 3.472.0 → 3.474.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 (268) hide show
  1. package/_test_/unit/retailCatalog/accessorySubcategory.test.ts +65 -0
  2. package/_test_/unit/retailCatalog/catalogDebt.test.ts +123 -0
  3. package/_test_/unit/retailCatalog/catalogEnums.test.ts +2 -2
  4. package/_test_/unit/retailCatalog/ventaSaga.test.ts +156 -0
  5. package/_test_/unit/retailPromotions/computeBudgetUsedBps.test.ts +30 -0
  6. package/_test_/unit/retailPromotions/constants.test.ts +78 -0
  7. package/_test_/unit/retailPromotions/discountCodeAndWizardRequests.test.ts +97 -0
  8. package/_test_/unit/retailPromotions/salePromotionRequests.test.ts +159 -0
  9. package/_test_/unit/retailWizard/promotionM2mRequests.test.ts +197 -0
  10. package/_test_/unit/retailWizard/ventaSagaMessages.test.ts +186 -0
  11. package/_test_/unit/retailWizard/ventaSagaRequests.test.ts +59 -0
  12. package/_test_/unit/retailWizard/ventaSagaShapes.test.ts +99 -0
  13. package/bin/index.d.ts +1 -0
  14. package/bin/index.js +5 -2
  15. package/bin/retailCatalog/dtos/Product.d.ts +9 -0
  16. package/bin/retailCatalog/dtos/requests/BackofficeCreateProductRequest.d.ts +12 -0
  17. package/bin/retailCatalog/dtos/requests/BackofficeCreateProductRequest.js +36 -0
  18. package/bin/retailCatalog/dtos/requests/BackofficeRegisterAdjustmentRequest.d.ts +2 -0
  19. package/bin/retailCatalog/dtos/requests/BackofficeRegisterAdjustmentRequest.js +6 -0
  20. package/bin/retailCatalog/dtos/requests/BackofficeUpdateProductRequest.d.ts +12 -0
  21. package/bin/retailCatalog/dtos/requests/BackofficeUpdateProductRequest.js +36 -0
  22. package/bin/retailCatalog/dtos/requests/HoldStockRequest.d.ts +12 -0
  23. package/bin/retailCatalog/dtos/requests/HoldStockRequest.js +50 -0
  24. package/bin/retailCatalog/dtos/requests/ReserveStockRequest.d.ts +3 -0
  25. package/bin/retailCatalog/dtos/requests/ReserveStockRequest.js +6 -0
  26. package/bin/retailCatalog/dtos/requests/SuggestPiecesQuery.d.ts +2 -0
  27. package/bin/retailCatalog/dtos/requests/SuggestPiecesQuery.js +6 -0
  28. package/bin/retailCatalog/dtos/responses/GetInventorySkuResponse.d.ts +3 -0
  29. package/bin/retailCatalog/dtos/responses/HoldStockResponse.d.ts +8 -0
  30. package/bin/retailCatalog/dtos/responses/HoldStockResponse.js +2 -0
  31. package/bin/retailCatalog/dtos/responses/StoreCatalogItem.d.ts +8 -1
  32. package/bin/retailCatalog/enums/AccessorySubcategoryEnum.d.ts +9 -0
  33. package/bin/retailCatalog/enums/AccessorySubcategoryEnum.js +13 -0
  34. package/bin/retailCatalog/enums/InventoryInboundMessageTypeEnum.d.ts +5 -0
  35. package/bin/retailCatalog/enums/InventoryInboundMessageTypeEnum.js +9 -0
  36. package/bin/retailCatalog/enums/InventoryItemStatusEnum.d.ts +4 -2
  37. package/bin/retailCatalog/enums/InventoryItemStatusEnum.js +3 -1
  38. package/bin/retailCatalog/enums/ReservePurposeEnum.d.ts +4 -0
  39. package/bin/retailCatalog/enums/ReservePurposeEnum.js +8 -0
  40. package/bin/retailCatalog/events/InventoryInboundMessage.d.ts +4 -0
  41. package/bin/retailCatalog/events/InventoryInboundMessage.js +2 -0
  42. package/bin/retailCatalog/events/InventoryReturnMessage.d.ts +12 -0
  43. package/bin/retailCatalog/events/InventoryReturnMessage.js +42 -0
  44. package/bin/retailCatalog/events/InventorySaleAppliedMessage.d.ts +12 -0
  45. package/bin/retailCatalog/events/InventorySaleAppliedMessage.js +42 -0
  46. package/bin/retailCatalog/index.d.ts +8 -0
  47. package/bin/retailCatalog/index.js +9 -0
  48. package/bin/retailPromotions/constants/bonusPreMoney.d.ts +7 -0
  49. package/bin/retailPromotions/constants/bonusPreMoney.js +21 -0
  50. package/bin/retailPromotions/constants/retailPromotionsErrorHttpStatus.d.ts +3 -0
  51. package/bin/retailPromotions/constants/retailPromotionsErrorHttpStatus.js +27 -0
  52. package/bin/retailPromotions/constants/salePromotionTransitions.d.ts +7 -0
  53. package/bin/retailPromotions/constants/salePromotionTransitions.js +13 -0
  54. package/bin/retailPromotions/dtos/DiscountCode.d.ts +35 -0
  55. package/bin/retailPromotions/dtos/DiscountCode.js +2 -0
  56. package/bin/retailPromotions/dtos/DiscountValue.d.ts +7 -0
  57. package/bin/retailPromotions/dtos/DiscountValue.js +2 -0
  58. package/bin/retailPromotions/dtos/LinePromotionDiscount.d.ts +10 -0
  59. package/bin/retailPromotions/dtos/LinePromotionDiscount.js +2 -0
  60. package/bin/retailPromotions/dtos/SalePromotion.d.ts +35 -0
  61. package/bin/retailPromotions/dtos/SalePromotion.js +2 -0
  62. package/bin/retailPromotions/dtos/SalePromotionLevers.d.ts +59 -0
  63. package/bin/retailPromotions/dtos/SalePromotionLevers.js +2 -0
  64. package/bin/retailPromotions/dtos/SalePromotionLogEntry.d.ts +18 -0
  65. package/bin/retailPromotions/dtos/SalePromotionLogEntry.js +2 -0
  66. package/bin/retailPromotions/dtos/requests/ChangeDiscountCodeStatusRequest.d.ts +6 -0
  67. package/bin/retailPromotions/dtos/requests/ChangeDiscountCodeStatusRequest.js +30 -0
  68. package/bin/retailPromotions/dtos/requests/ChangeSalePromotionStatusRequest.d.ts +6 -0
  69. package/bin/retailPromotions/dtos/requests/ChangeSalePromotionStatusRequest.js +30 -0
  70. package/bin/retailPromotions/dtos/requests/CreateDiscountCodeRequest.d.ts +17 -0
  71. package/bin/retailPromotions/dtos/requests/CreateDiscountCodeRequest.js +78 -0
  72. package/bin/retailPromotions/dtos/requests/CreateSalePromotionRequest.d.ts +19 -0
  73. package/bin/retailPromotions/dtos/requests/CreateSalePromotionRequest.js +83 -0
  74. package/bin/retailPromotions/dtos/requests/DiscountValueInput.d.ts +8 -0
  75. package/bin/retailPromotions/dtos/requests/DiscountValueInput.js +36 -0
  76. package/bin/retailPromotions/dtos/requests/EvaluateSalePromotionsRequest.d.ts +5 -0
  77. package/bin/retailPromotions/dtos/requests/EvaluateSalePromotionsRequest.js +31 -0
  78. package/bin/retailPromotions/dtos/requests/GetSaleCouponQuery.d.ts +4 -0
  79. package/bin/retailPromotions/dtos/requests/GetSaleCouponQuery.js +25 -0
  80. package/bin/retailPromotions/dtos/requests/HoldSalePromotionRequest.d.ts +11 -0
  81. package/bin/retailPromotions/dtos/requests/HoldSalePromotionRequest.js +48 -0
  82. package/bin/retailPromotions/dtos/requests/ListDiscountCodesQuery.d.ts +10 -0
  83. package/bin/retailPromotions/dtos/requests/ListDiscountCodesQuery.js +49 -0
  84. package/bin/retailPromotions/dtos/requests/ListSalePromotionLogQuery.d.ts +8 -0
  85. package/bin/retailPromotions/dtos/requests/ListSalePromotionLogQuery.js +46 -0
  86. package/bin/retailPromotions/dtos/requests/ListSalePromotionsQuery.d.ts +7 -0
  87. package/bin/retailPromotions/dtos/requests/ListSalePromotionsQuery.js +40 -0
  88. package/bin/retailPromotions/dtos/requests/ListStoreSalePromotionsQuery.d.ts +4 -0
  89. package/bin/retailPromotions/dtos/requests/ListStoreSalePromotionsQuery.js +24 -0
  90. package/bin/retailPromotions/dtos/requests/SalePromotionLeversInput.d.ts +41 -0
  91. package/bin/retailPromotions/dtos/requests/SalePromotionLeversInput.js +166 -0
  92. package/bin/retailPromotions/dtos/requests/SalePromotionScopeInput.d.ts +14 -0
  93. package/bin/retailPromotions/dtos/requests/SalePromotionScopeInput.js +65 -0
  94. package/bin/retailPromotions/dtos/requests/UpdateSalePromotionRequest.d.ts +19 -0
  95. package/bin/retailPromotions/dtos/requests/UpdateSalePromotionRequest.js +85 -0
  96. package/bin/retailPromotions/dtos/responses/DiscountCodeResponses.d.ts +7 -0
  97. package/bin/retailPromotions/dtos/responses/DiscountCodeResponses.js +2 -0
  98. package/bin/retailPromotions/dtos/responses/SalePromotionCrudResponses.d.ts +30 -0
  99. package/bin/retailPromotions/dtos/responses/SalePromotionCrudResponses.js +2 -0
  100. package/bin/retailPromotions/dtos/responses/WizardSalePromotionResponses.d.ts +102 -0
  101. package/bin/retailPromotions/dtos/responses/WizardSalePromotionResponses.js +2 -0
  102. package/bin/retailPromotions/enums/CouponScopeEnum.d.ts +11 -0
  103. package/bin/retailPromotions/enums/CouponScopeEnum.js +15 -0
  104. package/bin/retailPromotions/enums/CouponStatusEnum.d.ts +11 -0
  105. package/bin/retailPromotions/enums/CouponStatusEnum.js +15 -0
  106. package/bin/retailPromotions/enums/DiscountCodeOriginEnum.d.ts +8 -0
  107. package/bin/retailPromotions/enums/DiscountCodeOriginEnum.js +12 -0
  108. package/bin/retailPromotions/enums/DiscountCodeStatusEnum.d.ts +11 -0
  109. package/bin/retailPromotions/enums/DiscountCodeStatusEnum.js +15 -0
  110. package/bin/retailPromotions/enums/DiscountCodeTransitionEnum.d.ts +7 -0
  111. package/bin/retailPromotions/enums/DiscountCodeTransitionEnum.js +11 -0
  112. package/bin/retailPromotions/enums/DiscountTypeEnum.d.ts +8 -0
  113. package/bin/retailPromotions/enums/DiscountTypeEnum.js +12 -0
  114. package/bin/retailPromotions/enums/EntitlementKindEnum.d.ts +9 -0
  115. package/bin/retailPromotions/enums/EntitlementKindEnum.js +13 -0
  116. package/bin/retailPromotions/enums/EntitlementStateEnum.d.ts +13 -0
  117. package/bin/retailPromotions/enums/EntitlementStateEnum.js +17 -0
  118. package/bin/retailPromotions/enums/GiftModeEnum.d.ts +8 -0
  119. package/bin/retailPromotions/enums/GiftModeEnum.js +12 -0
  120. package/bin/retailPromotions/enums/PromotionAppliesToEnum.d.ts +9 -0
  121. package/bin/retailPromotions/enums/PromotionAppliesToEnum.js +13 -0
  122. package/bin/retailPromotions/enums/RetailPromotionsErrorCodeEnum.d.ts +29 -0
  123. package/bin/retailPromotions/enums/RetailPromotionsErrorCodeEnum.js +33 -0
  124. package/bin/retailPromotions/enums/SaleCouponAvailabilityEnum.d.ts +10 -0
  125. package/bin/retailPromotions/enums/SaleCouponAvailabilityEnum.js +14 -0
  126. package/bin/retailPromotions/enums/SalePromotionLeverEnum.d.ts +13 -0
  127. package/bin/retailPromotions/enums/SalePromotionLeverEnum.js +17 -0
  128. package/bin/retailPromotions/enums/SalePromotionLogEventEnum.d.ts +14 -0
  129. package/bin/retailPromotions/enums/SalePromotionLogEventEnum.js +18 -0
  130. package/bin/retailPromotions/enums/SalePromotionLogFormatEnum.d.ts +5 -0
  131. package/bin/retailPromotions/enums/SalePromotionLogFormatEnum.js +9 -0
  132. package/bin/retailPromotions/enums/SalePromotionPhaseEnum.d.ts +11 -0
  133. package/bin/retailPromotions/enums/SalePromotionPhaseEnum.js +15 -0
  134. package/bin/retailPromotions/enums/SalePromotionStatusEnum.d.ts +12 -0
  135. package/bin/retailPromotions/enums/SalePromotionStatusEnum.js +16 -0
  136. package/bin/retailPromotions/enums/SalePromotionTransitionEnum.d.ts +13 -0
  137. package/bin/retailPromotions/enums/SalePromotionTransitionEnum.js +17 -0
  138. package/bin/retailPromotions/helpers/computeBudgetUsedBps.d.ts +3 -0
  139. package/bin/retailPromotions/helpers/computeBudgetUsedBps.js +15 -0
  140. package/bin/retailPromotions/helpers/resolveSalePromotionTransition.d.ts +4 -0
  141. package/bin/retailPromotions/helpers/resolveSalePromotionTransition.js +9 -0
  142. package/bin/retailPromotions/index.d.ts +47 -0
  143. package/bin/retailPromotions/index.js +68 -0
  144. package/bin/retailWizard/dtos/Sale.d.ts +8 -8
  145. package/bin/retailWizard/dtos/SaleLine.d.ts +4 -1
  146. package/bin/retailWizard/dtos/WizardFinancingPreview.d.ts +11 -0
  147. package/bin/retailWizard/dtos/WizardFinancingPreview.js +2 -0
  148. package/bin/retailWizard/dtos/WizardGiftLine.d.ts +10 -0
  149. package/bin/retailWizard/dtos/WizardGiftLine.js +2 -0
  150. package/bin/retailWizard/dtos/WizardLinePromotionFields.d.ts +15 -0
  151. package/bin/retailWizard/dtos/WizardLinePromotionFields.js +2 -0
  152. package/bin/retailWizard/dtos/WizardReservedLine.d.ts +4 -1
  153. package/bin/retailWizard/dtos/WizardSession.d.ts +10 -0
  154. package/bin/retailWizard/dtos/requests/AddProductRequest.d.ts +2 -0
  155. package/bin/retailWizard/dtos/requests/AddProductRequest.js +7 -0
  156. package/bin/retailWizard/dtos/requests/ApplyLinePromotionRequest.d.ts +14 -0
  157. package/bin/retailWizard/dtos/requests/ApplyLinePromotionRequest.js +57 -0
  158. package/bin/retailWizard/dtos/requests/ApplySalePromotionRequest.d.ts +9 -0
  159. package/bin/retailWizard/dtos/requests/ApplySalePromotionRequest.js +36 -0
  160. package/bin/retailWizard/dtos/requests/PinSessionPiecesRequest.d.ts +14 -0
  161. package/bin/retailWizard/dtos/requests/PinSessionPiecesRequest.js +60 -0
  162. package/bin/retailWizard/dtos/requests/QuoteRequest.d.ts +1 -1
  163. package/bin/retailWizard/dtos/requests/SetAnchorGiftsRequest.d.ts +14 -0
  164. package/bin/retailWizard/dtos/requests/SetAnchorGiftsRequest.js +56 -0
  165. package/bin/retailWizard/dtos/responses/PrivateWizardSessionResponse.d.ts +29 -0
  166. package/bin/retailWizard/dtos/responses/PrivateWizardSessionResponse.js +2 -0
  167. package/bin/retailWizard/dtos/responses/SetAnchorGiftsResponse.d.ts +5 -0
  168. package/bin/retailWizard/dtos/responses/SetAnchorGiftsResponse.js +2 -0
  169. package/bin/retailWizard/enums/RetailPromotionInboundMessageTypeEnum.d.ts +5 -0
  170. package/bin/retailWizard/enums/RetailPromotionInboundMessageTypeEnum.js +9 -0
  171. package/bin/retailWizard/enums/WizardLineRoleEnum.d.ts +4 -0
  172. package/bin/retailWizard/enums/WizardLineRoleEnum.js +8 -0
  173. package/bin/retailWizard/events/RetailCommissionInboundMessage.d.ts +19 -0
  174. package/bin/retailWizard/events/RetailCommissionInboundMessage.js +78 -0
  175. package/bin/retailWizard/events/RetailPromotionInboundMessage.d.ts +40 -0
  176. package/bin/retailWizard/events/RetailPromotionInboundMessage.js +162 -0
  177. package/bin/retailWizard/events/SaleCompletedV1.d.ts +2 -3
  178. package/bin/retailWizard/index.d.ts +13 -0
  179. package/bin/retailWizard/index.js +14 -0
  180. package/package.json +1 -1
  181. package/src/index.ts +3 -0
  182. package/src/retailCatalog/dtos/Product.ts +9 -0
  183. package/src/retailCatalog/dtos/requests/BackofficeCreateProductRequest.ts +36 -1
  184. package/src/retailCatalog/dtos/requests/BackofficeRegisterAdjustmentRequest.ts +6 -0
  185. package/src/retailCatalog/dtos/requests/BackofficeUpdateProductRequest.ts +36 -1
  186. package/src/retailCatalog/dtos/requests/HoldStockRequest.ts +31 -0
  187. package/src/retailCatalog/dtos/requests/ReserveStockRequest.ts +7 -1
  188. package/src/retailCatalog/dtos/requests/SuggestPiecesQuery.ts +7 -1
  189. package/src/retailCatalog/dtos/responses/GetInventorySkuResponse.ts +3 -0
  190. package/src/retailCatalog/dtos/responses/HoldStockResponse.ts +9 -0
  191. package/src/retailCatalog/dtos/responses/StoreCatalogItem.ts +9 -1
  192. package/src/retailCatalog/enums/AccessorySubcategoryEnum.ts +9 -0
  193. package/src/retailCatalog/enums/InventoryInboundMessageTypeEnum.ts +5 -0
  194. package/src/retailCatalog/enums/InventoryItemStatusEnum.ts +3 -1
  195. package/src/retailCatalog/enums/ReservePurposeEnum.ts +4 -0
  196. package/src/retailCatalog/events/InventoryInboundMessage.ts +5 -0
  197. package/src/retailCatalog/events/InventoryReturnMessage.ts +26 -0
  198. package/src/retailCatalog/events/InventorySaleAppliedMessage.ts +26 -0
  199. package/src/retailCatalog/index.ts +10 -0
  200. package/src/retailPromotions/constants/bonusPreMoney.ts +19 -0
  201. package/src/retailPromotions/constants/retailPromotionsErrorHttpStatus.ts +25 -0
  202. package/src/retailPromotions/constants/salePromotionTransitions.ts +11 -0
  203. package/src/retailPromotions/dtos/DiscountCode.ts +36 -0
  204. package/src/retailPromotions/dtos/DiscountValue.ts +8 -0
  205. package/src/retailPromotions/dtos/LinePromotionDiscount.ts +10 -0
  206. package/src/retailPromotions/dtos/SalePromotion.ts +36 -0
  207. package/src/retailPromotions/dtos/SalePromotionLevers.ts +68 -0
  208. package/src/retailPromotions/dtos/SalePromotionLogEntry.ts +19 -0
  209. package/src/retailPromotions/dtos/requests/ChangeDiscountCodeStatusRequest.ts +15 -0
  210. package/src/retailPromotions/dtos/requests/ChangeSalePromotionStatusRequest.ts +15 -0
  211. package/src/retailPromotions/dtos/requests/CreateDiscountCodeRequest.ts +71 -0
  212. package/src/retailPromotions/dtos/requests/CreateSalePromotionRequest.ts +73 -0
  213. package/src/retailPromotions/dtos/requests/DiscountValueInput.ts +21 -0
  214. package/src/retailPromotions/dtos/requests/EvaluateSalePromotionsRequest.ts +16 -0
  215. package/src/retailPromotions/dtos/requests/GetSaleCouponQuery.ts +11 -0
  216. package/src/retailPromotions/dtos/requests/HoldSalePromotionRequest.ts +32 -0
  217. package/src/retailPromotions/dtos/requests/ListDiscountCodesQuery.ts +33 -0
  218. package/src/retailPromotions/dtos/requests/ListSalePromotionLogQuery.ts +29 -0
  219. package/src/retailPromotions/dtos/requests/ListSalePromotionsQuery.ts +24 -0
  220. package/src/retailPromotions/dtos/requests/ListStoreSalePromotionsQuery.ts +10 -0
  221. package/src/retailPromotions/dtos/requests/SalePromotionLeversInput.ts +135 -0
  222. package/src/retailPromotions/dtos/requests/SalePromotionScopeInput.ts +45 -0
  223. package/src/retailPromotions/dtos/requests/UpdateSalePromotionRequest.ts +74 -0
  224. package/src/retailPromotions/dtos/responses/DiscountCodeResponses.ts +9 -0
  225. package/src/retailPromotions/dtos/responses/SalePromotionCrudResponses.ts +35 -0
  226. package/src/retailPromotions/dtos/responses/WizardSalePromotionResponses.ts +115 -0
  227. package/src/retailPromotions/enums/CouponScopeEnum.ts +11 -0
  228. package/src/retailPromotions/enums/CouponStatusEnum.ts +11 -0
  229. package/src/retailPromotions/enums/DiscountCodeOriginEnum.ts +8 -0
  230. package/src/retailPromotions/enums/DiscountCodeStatusEnum.ts +11 -0
  231. package/src/retailPromotions/enums/DiscountCodeTransitionEnum.ts +7 -0
  232. package/src/retailPromotions/enums/DiscountTypeEnum.ts +8 -0
  233. package/src/retailPromotions/enums/EntitlementKindEnum.ts +9 -0
  234. package/src/retailPromotions/enums/EntitlementStateEnum.ts +13 -0
  235. package/src/retailPromotions/enums/GiftModeEnum.ts +8 -0
  236. package/src/retailPromotions/enums/PromotionAppliesToEnum.ts +9 -0
  237. package/src/retailPromotions/enums/RetailPromotionsErrorCodeEnum.ts +29 -0
  238. package/src/retailPromotions/enums/SaleCouponAvailabilityEnum.ts +10 -0
  239. package/src/retailPromotions/enums/SalePromotionLeverEnum.ts +13 -0
  240. package/src/retailPromotions/enums/SalePromotionLogEventEnum.ts +14 -0
  241. package/src/retailPromotions/enums/SalePromotionLogFormatEnum.ts +5 -0
  242. package/src/retailPromotions/enums/SalePromotionPhaseEnum.ts +11 -0
  243. package/src/retailPromotions/enums/SalePromotionStatusEnum.ts +12 -0
  244. package/src/retailPromotions/enums/SalePromotionTransitionEnum.ts +13 -0
  245. package/src/retailPromotions/helpers/computeBudgetUsedBps.ts +15 -0
  246. package/src/retailPromotions/helpers/resolveSalePromotionTransition.ts +12 -0
  247. package/src/retailPromotions/index.ts +56 -0
  248. package/src/retailWizard/dtos/Sale.ts +8 -8
  249. package/src/retailWizard/dtos/SaleLine.ts +4 -1
  250. package/src/retailWizard/dtos/WizardFinancingPreview.ts +12 -0
  251. package/src/retailWizard/dtos/WizardGiftLine.ts +11 -0
  252. package/src/retailWizard/dtos/WizardLinePromotionFields.ts +16 -0
  253. package/src/retailWizard/dtos/WizardReservedLine.ts +4 -1
  254. package/src/retailWizard/dtos/WizardSession.ts +10 -0
  255. package/src/retailWizard/dtos/requests/AddProductRequest.ts +8 -1
  256. package/src/retailWizard/dtos/requests/ApplyLinePromotionRequest.ts +44 -0
  257. package/src/retailWizard/dtos/requests/ApplySalePromotionRequest.ts +24 -0
  258. package/src/retailWizard/dtos/requests/PinSessionPiecesRequest.ts +40 -0
  259. package/src/retailWizard/dtos/requests/QuoteRequest.ts +1 -1
  260. package/src/retailWizard/dtos/requests/SetAnchorGiftsRequest.ts +40 -0
  261. package/src/retailWizard/dtos/responses/PrivateWizardSessionResponse.ts +30 -0
  262. package/src/retailWizard/dtos/responses/SetAnchorGiftsResponse.ts +6 -0
  263. package/src/retailWizard/enums/RetailPromotionInboundMessageTypeEnum.ts +5 -0
  264. package/src/retailWizard/enums/WizardLineRoleEnum.ts +4 -0
  265. package/src/retailWizard/events/RetailCommissionInboundMessage.ts +54 -0
  266. package/src/retailWizard/events/RetailPromotionInboundMessage.ts +140 -0
  267. package/src/retailWizard/events/SaleCompletedV1.ts +2 -3
  268. package/src/retailWizard/index.ts +15 -0
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DiscountTypeEnum = void 0;
4
+ /**
5
+ * Tipo de descuento: monto fijo en centavos o porcentaje en puntos base (1000 = 10%).
6
+ * @enum {string}
7
+ */
8
+ var DiscountTypeEnum;
9
+ (function (DiscountTypeEnum) {
10
+ DiscountTypeEnum["AMOUNT"] = "AMOUNT";
11
+ DiscountTypeEnum["PERCENTAGE"] = "PERCENTAGE";
12
+ })(DiscountTypeEnum || (exports.DiscountTypeEnum = DiscountTypeEnum = {}));
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Tipo de entrega posterior a la venta.
3
+ * @enum {string}
4
+ */
5
+ export declare enum EntitlementKindEnum {
6
+ WALLET = "WALLET",
7
+ WARRANTY = "WARRANTY",
8
+ AIRTIME = "AIRTIME"
9
+ }
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EntitlementKindEnum = void 0;
4
+ /**
5
+ * Tipo de entrega posterior a la venta.
6
+ * @enum {string}
7
+ */
8
+ var EntitlementKindEnum;
9
+ (function (EntitlementKindEnum) {
10
+ EntitlementKindEnum["WALLET"] = "WALLET";
11
+ EntitlementKindEnum["WARRANTY"] = "WARRANTY";
12
+ EntitlementKindEnum["AIRTIME"] = "AIRTIME";
13
+ })(EntitlementKindEnum || (exports.EntitlementKindEnum = EntitlementKindEnum = {}));
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Estado de una entrega posterior a la venta (Wallet, garantía, tiempo aire).
3
+ * @enum {string}
4
+ */
5
+ export declare enum EntitlementStateEnum {
6
+ PENDING = "PENDING",
7
+ /** Reclamada con lease; hay una llamada al processor en curso. */
8
+ IN_FLIGHT = "IN_FLIGHT",
9
+ SETTLED = "SETTLED",
10
+ /** No se sabe si movió dinero: se concilia a mano, sin reintento. */
11
+ UNVERIFIED = "UNVERIFIED",
12
+ VOID = "VOID"
13
+ }
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EntitlementStateEnum = void 0;
4
+ /**
5
+ * Estado de una entrega posterior a la venta (Wallet, garantía, tiempo aire).
6
+ * @enum {string}
7
+ */
8
+ var EntitlementStateEnum;
9
+ (function (EntitlementStateEnum) {
10
+ EntitlementStateEnum["PENDING"] = "PENDING";
11
+ /** Reclamada con lease; hay una llamada al processor en curso. */
12
+ EntitlementStateEnum["IN_FLIGHT"] = "IN_FLIGHT";
13
+ EntitlementStateEnum["SETTLED"] = "SETTLED";
14
+ /** No se sabe si movió dinero: se concilia a mano, sin reintento. */
15
+ EntitlementStateEnum["UNVERIFIED"] = "UNVERIFIED";
16
+ EntitlementStateEnum["VOID"] = "VOID";
17
+ })(EntitlementStateEnum || (exports.EntitlementStateEnum = EntitlementStateEnum = {}));
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Cómo se define el regalo: lista cerrada de SKUs o gama (categoría y precio máximo).
3
+ * @enum {string}
4
+ */
5
+ export declare enum GiftModeEnum {
6
+ LIST = "LIST",
7
+ RANGE = "RANGE"
8
+ }
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GiftModeEnum = void 0;
4
+ /**
5
+ * Cómo se define el regalo: lista cerrada de SKUs o gama (categoría y precio máximo).
6
+ * @enum {string}
7
+ */
8
+ var GiftModeEnum;
9
+ (function (GiftModeEnum) {
10
+ GiftModeEnum["LIST"] = "LIST";
11
+ GiftModeEnum["RANGE"] = "RANGE";
12
+ })(GiftModeEnum || (exports.GiftModeEnum = GiftModeEnum = {}));
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Con qué financiera aplica una promo o un código. Sin valor, el lambda asume `SUREKEEP_ONLY`.
3
+ * @enum {string}
4
+ */
5
+ export declare enum PromotionAppliesToEnum {
6
+ SUREKEEP_ONLY = "SUREKEEP_ONLY",
7
+ /** También cuando el teléfono se deriva a otra financiera y la venta cuenta como contado. */
8
+ ANY_FINANCIER = "ANY_FINANCIER"
9
+ }
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PromotionAppliesToEnum = void 0;
4
+ /**
5
+ * Con qué financiera aplica una promo o un código. Sin valor, el lambda asume `SUREKEEP_ONLY`.
6
+ * @enum {string}
7
+ */
8
+ var PromotionAppliesToEnum;
9
+ (function (PromotionAppliesToEnum) {
10
+ PromotionAppliesToEnum["SUREKEEP_ONLY"] = "SUREKEEP_ONLY";
11
+ /** También cuando el teléfono se deriva a otra financiera y la venta cuenta como contado. */
12
+ PromotionAppliesToEnum["ANY_FINANCIER"] = "ANY_FINANCIER";
13
+ })(PromotionAppliesToEnum || (exports.PromotionAppliesToEnum = PromotionAppliesToEnum = {}));
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Codes de error de retail-promotions-business; el status de cada uno está en
3
+ * `RETAIL_PROMOTIONS_ERROR_HTTP_STATUS`. Las clases `DomainError` viven en el lambda.
4
+ * @enum {string}
5
+ */
6
+ export declare enum RetailPromotionsErrorCodeEnum {
7
+ INVALID_PROMOTION_TRANSITION = "INVALID_PROMOTION_TRANSITION",
8
+ CODE_TEXT_TAKEN = "CODE_TEXT_TAKEN",
9
+ PROMOTION_NOT_ACTIVE = "PROMOTION_NOT_ACTIVE",
10
+ PROMOTION_NOT_APPLICABLE = "PROMOTION_NOT_APPLICABLE",
11
+ CUSTOMER_NOT_IDENTIFIED = "CUSTOMER_NOT_IDENTIFIED",
12
+ GIFT_NOT_ALLOWED = "GIFT_NOT_ALLOWED",
13
+ INSUFFICIENT_STOCK = "INSUFFICIENT_STOCK",
14
+ CODE_NOT_FOUND = "CODE_NOT_FOUND",
15
+ CODE_NOT_APPLICABLE = "CODE_NOT_APPLICABLE",
16
+ CODE_NOT_OWNED = "CODE_NOT_OWNED",
17
+ CODE_NOT_ACTIVE = "CODE_NOT_ACTIVE",
18
+ CODE_EXHAUSTED = "CODE_EXHAUSTED",
19
+ CODE_ALREADY_APPLIED = "CODE_ALREADY_APPLIED",
20
+ DISCOUNT_AFTER_QUOTE = "DISCOUNT_AFTER_QUOTE",
21
+ INVALID_SALE_PROMOTION = "INVALID_SALE_PROMOTION",
22
+ INVALID_DISCOUNT_CODE = "INVALID_DISCOUNT_CODE",
23
+ SALE_PROMOTION_NOT_FOUND = "SALE_PROMOTION_NOT_FOUND",
24
+ SALE_COUPON_NOT_FOUND = "SALE_COUPON_NOT_FOUND",
25
+ /** La sesión no trae retailer: no se puede acotar la consulta. */
26
+ MISSING_RETAILER_SCOPE = "MISSING_RETAILER_SCOPE",
27
+ /** La sesión no trae tienda: no se puede acotar la consulta. */
28
+ MISSING_STORE_SCOPE = "MISSING_STORE_SCOPE"
29
+ }
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RetailPromotionsErrorCodeEnum = void 0;
4
+ /**
5
+ * Codes de error de retail-promotions-business; el status de cada uno está en
6
+ * `RETAIL_PROMOTIONS_ERROR_HTTP_STATUS`. Las clases `DomainError` viven en el lambda.
7
+ * @enum {string}
8
+ */
9
+ var RetailPromotionsErrorCodeEnum;
10
+ (function (RetailPromotionsErrorCodeEnum) {
11
+ RetailPromotionsErrorCodeEnum["INVALID_PROMOTION_TRANSITION"] = "INVALID_PROMOTION_TRANSITION";
12
+ RetailPromotionsErrorCodeEnum["CODE_TEXT_TAKEN"] = "CODE_TEXT_TAKEN";
13
+ RetailPromotionsErrorCodeEnum["PROMOTION_NOT_ACTIVE"] = "PROMOTION_NOT_ACTIVE";
14
+ RetailPromotionsErrorCodeEnum["PROMOTION_NOT_APPLICABLE"] = "PROMOTION_NOT_APPLICABLE";
15
+ RetailPromotionsErrorCodeEnum["CUSTOMER_NOT_IDENTIFIED"] = "CUSTOMER_NOT_IDENTIFIED";
16
+ RetailPromotionsErrorCodeEnum["GIFT_NOT_ALLOWED"] = "GIFT_NOT_ALLOWED";
17
+ RetailPromotionsErrorCodeEnum["INSUFFICIENT_STOCK"] = "INSUFFICIENT_STOCK";
18
+ RetailPromotionsErrorCodeEnum["CODE_NOT_FOUND"] = "CODE_NOT_FOUND";
19
+ RetailPromotionsErrorCodeEnum["CODE_NOT_APPLICABLE"] = "CODE_NOT_APPLICABLE";
20
+ RetailPromotionsErrorCodeEnum["CODE_NOT_OWNED"] = "CODE_NOT_OWNED";
21
+ RetailPromotionsErrorCodeEnum["CODE_NOT_ACTIVE"] = "CODE_NOT_ACTIVE";
22
+ RetailPromotionsErrorCodeEnum["CODE_EXHAUSTED"] = "CODE_EXHAUSTED";
23
+ RetailPromotionsErrorCodeEnum["CODE_ALREADY_APPLIED"] = "CODE_ALREADY_APPLIED";
24
+ RetailPromotionsErrorCodeEnum["DISCOUNT_AFTER_QUOTE"] = "DISCOUNT_AFTER_QUOTE";
25
+ RetailPromotionsErrorCodeEnum["INVALID_SALE_PROMOTION"] = "INVALID_SALE_PROMOTION";
26
+ RetailPromotionsErrorCodeEnum["INVALID_DISCOUNT_CODE"] = "INVALID_DISCOUNT_CODE";
27
+ RetailPromotionsErrorCodeEnum["SALE_PROMOTION_NOT_FOUND"] = "SALE_PROMOTION_NOT_FOUND";
28
+ RetailPromotionsErrorCodeEnum["SALE_COUPON_NOT_FOUND"] = "SALE_COUPON_NOT_FOUND";
29
+ /** La sesión no trae retailer: no se puede acotar la consulta. */
30
+ RetailPromotionsErrorCodeEnum["MISSING_RETAILER_SCOPE"] = "MISSING_RETAILER_SCOPE";
31
+ /** La sesión no trae tienda: no se puede acotar la consulta. */
32
+ RetailPromotionsErrorCodeEnum["MISSING_STORE_SCOPE"] = "MISSING_STORE_SCOPE";
33
+ })(RetailPromotionsErrorCodeEnum || (exports.RetailPromotionsErrorCodeEnum = RetailPromotionsErrorCodeEnum = {}));
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Si la venta cerrada ya tiene su cupón: `GENERATING` mientras la cola no lo emite.
3
+ * @enum {string}
4
+ */
5
+ export declare enum SaleCouponAvailabilityEnum {
6
+ GENERATING = "GENERATING",
7
+ READY = "READY",
8
+ /** La venta no da cupón. */
9
+ NONE = "NONE"
10
+ }
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SaleCouponAvailabilityEnum = void 0;
4
+ /**
5
+ * Si la venta cerrada ya tiene su cupón: `GENERATING` mientras la cola no lo emite.
6
+ * @enum {string}
7
+ */
8
+ var SaleCouponAvailabilityEnum;
9
+ (function (SaleCouponAvailabilityEnum) {
10
+ SaleCouponAvailabilityEnum["GENERATING"] = "GENERATING";
11
+ SaleCouponAvailabilityEnum["READY"] = "READY";
12
+ /** La venta no da cupón. */
13
+ SaleCouponAvailabilityEnum["NONE"] = "NONE";
14
+ })(SaleCouponAvailabilityEnum || (exports.SaleCouponAvailabilityEnum = SaleCouponAvailabilityEnum = {}));
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Las 7 palancas combinables de una promo de venta.
3
+ * @enum {string}
4
+ */
5
+ export declare enum SalePromotionLeverEnum {
6
+ DEVICE_DISCOUNT = "DEVICE_DISCOUNT",
7
+ ACCESSORY_DISCOUNT = "ACCESSORY_DISCOUNT",
8
+ GIFT = "GIFT",
9
+ COUPON = "COUPON",
10
+ AIRTIME = "AIRTIME",
11
+ EXTENDED_WARRANTY = "EXTENDED_WARRANTY",
12
+ WALLET_BONUS = "WALLET_BONUS"
13
+ }
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SalePromotionLeverEnum = void 0;
4
+ /**
5
+ * Las 7 palancas combinables de una promo de venta.
6
+ * @enum {string}
7
+ */
8
+ var SalePromotionLeverEnum;
9
+ (function (SalePromotionLeverEnum) {
10
+ SalePromotionLeverEnum["DEVICE_DISCOUNT"] = "DEVICE_DISCOUNT";
11
+ SalePromotionLeverEnum["ACCESSORY_DISCOUNT"] = "ACCESSORY_DISCOUNT";
12
+ SalePromotionLeverEnum["GIFT"] = "GIFT";
13
+ SalePromotionLeverEnum["COUPON"] = "COUPON";
14
+ SalePromotionLeverEnum["AIRTIME"] = "AIRTIME";
15
+ SalePromotionLeverEnum["EXTENDED_WARRANTY"] = "EXTENDED_WARRANTY";
16
+ SalePromotionLeverEnum["WALLET_BONUS"] = "WALLET_BONUS";
17
+ })(SalePromotionLeverEnum || (exports.SalePromotionLeverEnum = SalePromotionLeverEnum = {}));
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Evento del historial de promos de venta. Los automáticos (autopausa, reanudación, vencimiento)
3
+ * usan el mismo evento con autor `system`.
4
+ * @enum {string}
5
+ */
6
+ export declare enum SalePromotionLogEventEnum {
7
+ CREATE = "CREATE",
8
+ UPDATE = "UPDATE",
9
+ PUBLISH = "PUBLISH",
10
+ PAUSE = "PAUSE",
11
+ RESUME = "RESUME",
12
+ EXPIRE = "EXPIRE",
13
+ ARCHIVE = "ARCHIVE"
14
+ }
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SalePromotionLogEventEnum = void 0;
4
+ /**
5
+ * Evento del historial de promos de venta. Los automáticos (autopausa, reanudación, vencimiento)
6
+ * usan el mismo evento con autor `system`.
7
+ * @enum {string}
8
+ */
9
+ var SalePromotionLogEventEnum;
10
+ (function (SalePromotionLogEventEnum) {
11
+ SalePromotionLogEventEnum["CREATE"] = "CREATE";
12
+ SalePromotionLogEventEnum["UPDATE"] = "UPDATE";
13
+ SalePromotionLogEventEnum["PUBLISH"] = "PUBLISH";
14
+ SalePromotionLogEventEnum["PAUSE"] = "PAUSE";
15
+ SalePromotionLogEventEnum["RESUME"] = "RESUME";
16
+ SalePromotionLogEventEnum["EXPIRE"] = "EXPIRE";
17
+ SalePromotionLogEventEnum["ARCHIVE"] = "ARCHIVE";
18
+ })(SalePromotionLogEventEnum || (exports.SalePromotionLogEventEnum = SalePromotionLogEventEnum = {}));
@@ -0,0 +1,5 @@
1
+ /** Formato de salida del historial: página JSON o exportación CSV. */
2
+ export declare enum SalePromotionLogFormatEnum {
3
+ JSON = "JSON",
4
+ CSV = "CSV"
5
+ }
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SalePromotionLogFormatEnum = void 0;
4
+ /** Formato de salida del historial: página JSON o exportación CSV. */
5
+ var SalePromotionLogFormatEnum;
6
+ (function (SalePromotionLogFormatEnum) {
7
+ SalePromotionLogFormatEnum["JSON"] = "JSON";
8
+ SalePromotionLogFormatEnum["CSV"] = "CSV";
9
+ })(SalePromotionLogFormatEnum || (exports.SalePromotionLogFormatEnum = SalePromotionLogFormatEnum = {}));
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Fase derivada de la vigencia (hora CDMX) de una promo `ACTIVE`; no se persiste.
3
+ * @enum {string}
4
+ */
5
+ export declare enum SalePromotionPhaseEnum {
6
+ /** Activa con inicio futuro. */
7
+ SCHEDULED = "SCHEDULED",
8
+ LIVE = "LIVE",
9
+ /** Vigente y termina en los próximos 7 días. */
10
+ EXPIRING_SOON = "EXPIRING_SOON"
11
+ }
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SalePromotionPhaseEnum = void 0;
4
+ /**
5
+ * Fase derivada de la vigencia (hora CDMX) de una promo `ACTIVE`; no se persiste.
6
+ * @enum {string}
7
+ */
8
+ var SalePromotionPhaseEnum;
9
+ (function (SalePromotionPhaseEnum) {
10
+ /** Activa con inicio futuro. */
11
+ SalePromotionPhaseEnum["SCHEDULED"] = "SCHEDULED";
12
+ SalePromotionPhaseEnum["LIVE"] = "LIVE";
13
+ /** Vigente y termina en los próximos 7 días. */
14
+ SalePromotionPhaseEnum["EXPIRING_SOON"] = "EXPIRING_SOON";
15
+ })(SalePromotionPhaseEnum || (exports.SalePromotionPhaseEnum = SalePromotionPhaseEnum = {}));
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Estado persistido de una promo de venta. Programada, permanente y vencida-por-fecha se derivan
3
+ * de la vigencia; `ARCHIVED` la oculta del listado salvo en el filtro «Archivadas».
4
+ * @enum {string}
5
+ */
6
+ export declare enum SalePromotionStatusEnum {
7
+ DRAFT = "DRAFT",
8
+ ACTIVE = "ACTIVE",
9
+ PAUSED = "PAUSED",
10
+ EXPIRED = "EXPIRED",
11
+ ARCHIVED = "ARCHIVED"
12
+ }
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SalePromotionStatusEnum = void 0;
4
+ /**
5
+ * Estado persistido de una promo de venta. Programada, permanente y vencida-por-fecha se derivan
6
+ * de la vigencia; `ARCHIVED` la oculta del listado salvo en el filtro «Archivadas».
7
+ * @enum {string}
8
+ */
9
+ var SalePromotionStatusEnum;
10
+ (function (SalePromotionStatusEnum) {
11
+ SalePromotionStatusEnum["DRAFT"] = "DRAFT";
12
+ SalePromotionStatusEnum["ACTIVE"] = "ACTIVE";
13
+ SalePromotionStatusEnum["PAUSED"] = "PAUSED";
14
+ SalePromotionStatusEnum["EXPIRED"] = "EXPIRED";
15
+ SalePromotionStatusEnum["ARCHIVED"] = "ARCHIVED";
16
+ })(SalePromotionStatusEnum || (exports.SalePromotionStatusEnum = SalePromotionStatusEnum = {}));
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Acción que pide Admin VL sobre una promo de venta. El destino lo resuelve
3
+ * `resolveSalePromotionTransition`; una transición no permitida es `INVALID_PROMOTION_TRANSITION`.
4
+ * @enum {string}
5
+ */
6
+ export declare enum SalePromotionTransitionEnum {
7
+ PUBLISH = "PUBLISH",
8
+ PAUSE = "PAUSE",
9
+ RESUME = "RESUME",
10
+ /** Fin ahora. Que no aplique a una promo permanente lo valida el lambda. */
11
+ EXPIRE = "EXPIRE",
12
+ ARCHIVE = "ARCHIVE"
13
+ }
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SalePromotionTransitionEnum = void 0;
4
+ /**
5
+ * Acción que pide Admin VL sobre una promo de venta. El destino lo resuelve
6
+ * `resolveSalePromotionTransition`; una transición no permitida es `INVALID_PROMOTION_TRANSITION`.
7
+ * @enum {string}
8
+ */
9
+ var SalePromotionTransitionEnum;
10
+ (function (SalePromotionTransitionEnum) {
11
+ SalePromotionTransitionEnum["PUBLISH"] = "PUBLISH";
12
+ SalePromotionTransitionEnum["PAUSE"] = "PAUSE";
13
+ SalePromotionTransitionEnum["RESUME"] = "RESUME";
14
+ /** Fin ahora. Que no aplique a una promo permanente lo valida el lambda. */
15
+ SalePromotionTransitionEnum["EXPIRE"] = "EXPIRE";
16
+ SalePromotionTransitionEnum["ARCHIVE"] = "ARCHIVE";
17
+ })(SalePromotionTransitionEnum || (exports.SalePromotionTransitionEnum = SalePromotionTransitionEnum = {}));
@@ -0,0 +1,3 @@
1
+ import { SalePromotion } from '../dtos/SalePromotion';
2
+ /** % de presupuesto consumido en puntos base sobre las promos con tope; `null` si ninguna tiene tope. */
3
+ export declare function computeBudgetUsedBps(promotions: Pick<SalePromotion, 'budgetMaxCents' | 'budgetConsumedCents'>[]): number | null;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.computeBudgetUsedBps = computeBudgetUsedBps;
4
+ /** % de presupuesto consumido en puntos base sobre las promos con tope; `null` si ninguna tiene tope. */
5
+ function computeBudgetUsedBps(promotions) {
6
+ let maxCents = 0;
7
+ let consumedCents = 0;
8
+ for (const { budgetMaxCents, budgetConsumedCents } of promotions) {
9
+ if (budgetMaxCents === null)
10
+ continue;
11
+ maxCents += budgetMaxCents;
12
+ consumedCents += budgetConsumedCents;
13
+ }
14
+ return maxCents > 0 ? Math.floor((consumedCents * 10000) / maxCents) : null;
15
+ }
@@ -0,0 +1,4 @@
1
+ import { SalePromotionStatusEnum } from '../enums/SalePromotionStatusEnum';
2
+ import { SalePromotionTransitionEnum } from '../enums/SalePromotionTransitionEnum';
3
+ /** Estado destino de aplicar la transición, o `null` si no se permite desde `from`. */
4
+ export declare function resolveSalePromotionTransition(from: SalePromotionStatusEnum, transition: SalePromotionTransitionEnum): SalePromotionStatusEnum | null;
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.resolveSalePromotionTransition = resolveSalePromotionTransition;
4
+ const salePromotionTransitions_1 = require("../constants/salePromotionTransitions");
5
+ /** Estado destino de aplicar la transición, o `null` si no se permite desde `from`. */
6
+ function resolveSalePromotionTransition(from, transition) {
7
+ const rule = salePromotionTransitions_1.SALE_PROMOTION_TRANSITIONS[transition];
8
+ return rule.from.includes(from) ? rule.to : null;
9
+ }
@@ -0,0 +1,47 @@
1
+ export * from './enums/SalePromotionStatusEnum';
2
+ export * from './enums/SalePromotionTransitionEnum';
3
+ export * from './enums/SalePromotionPhaseEnum';
4
+ export * from './enums/SalePromotionLeverEnum';
5
+ export * from './enums/SalePromotionLogEventEnum';
6
+ export * from './enums/SalePromotionLogFormatEnum';
7
+ export * from './enums/DiscountTypeEnum';
8
+ export * from './enums/GiftModeEnum';
9
+ export * from './enums/PromotionAppliesToEnum';
10
+ export * from './enums/CouponScopeEnum';
11
+ export * from './enums/CouponStatusEnum';
12
+ export * from './enums/DiscountCodeStatusEnum';
13
+ export * from './enums/DiscountCodeOriginEnum';
14
+ export * from './enums/DiscountCodeTransitionEnum';
15
+ export * from './enums/EntitlementStateEnum';
16
+ export * from './enums/EntitlementKindEnum';
17
+ export * from './enums/SaleCouponAvailabilityEnum';
18
+ export * from './enums/RetailPromotionsErrorCodeEnum';
19
+ export * from './constants/retailPromotionsErrorHttpStatus';
20
+ export * from './constants/salePromotionTransitions';
21
+ export * from './constants/bonusPreMoney';
22
+ export * from './helpers/resolveSalePromotionTransition';
23
+ export * from './helpers/computeBudgetUsedBps';
24
+ export * from './dtos/DiscountValue';
25
+ export * from './dtos/SalePromotionLevers';
26
+ export * from './dtos/SalePromotion';
27
+ export * from './dtos/SalePromotionLogEntry';
28
+ export * from './dtos/DiscountCode';
29
+ export * from './dtos/LinePromotionDiscount';
30
+ export * from './dtos/requests/DiscountValueInput';
31
+ export * from './dtos/requests/SalePromotionLeversInput';
32
+ export * from './dtos/requests/SalePromotionScopeInput';
33
+ export * from './dtos/requests/CreateSalePromotionRequest';
34
+ export * from './dtos/requests/UpdateSalePromotionRequest';
35
+ export * from './dtos/requests/ChangeSalePromotionStatusRequest';
36
+ export * from './dtos/requests/ListSalePromotionsQuery';
37
+ export * from './dtos/requests/ListSalePromotionLogQuery';
38
+ export * from './dtos/requests/CreateDiscountCodeRequest';
39
+ export * from './dtos/requests/ListDiscountCodesQuery';
40
+ export * from './dtos/requests/ChangeDiscountCodeStatusRequest';
41
+ export * from './dtos/requests/ListStoreSalePromotionsQuery';
42
+ export * from './dtos/requests/EvaluateSalePromotionsRequest';
43
+ export * from './dtos/requests/HoldSalePromotionRequest';
44
+ export * from './dtos/requests/GetSaleCouponQuery';
45
+ export * from './dtos/responses/SalePromotionCrudResponses';
46
+ export * from './dtos/responses/DiscountCodeResponses';
47
+ export * from './dtos/responses/WizardSalePromotionResponses';
@@ -0,0 +1,68 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ // Enums
18
+ __exportStar(require("./enums/SalePromotionStatusEnum"), exports);
19
+ __exportStar(require("./enums/SalePromotionTransitionEnum"), exports);
20
+ __exportStar(require("./enums/SalePromotionPhaseEnum"), exports);
21
+ __exportStar(require("./enums/SalePromotionLeverEnum"), exports);
22
+ __exportStar(require("./enums/SalePromotionLogEventEnum"), exports);
23
+ __exportStar(require("./enums/SalePromotionLogFormatEnum"), exports);
24
+ __exportStar(require("./enums/DiscountTypeEnum"), exports);
25
+ __exportStar(require("./enums/GiftModeEnum"), exports);
26
+ __exportStar(require("./enums/PromotionAppliesToEnum"), exports);
27
+ __exportStar(require("./enums/CouponScopeEnum"), exports);
28
+ __exportStar(require("./enums/CouponStatusEnum"), exports);
29
+ __exportStar(require("./enums/DiscountCodeStatusEnum"), exports);
30
+ __exportStar(require("./enums/DiscountCodeOriginEnum"), exports);
31
+ __exportStar(require("./enums/DiscountCodeTransitionEnum"), exports);
32
+ __exportStar(require("./enums/EntitlementStateEnum"), exports);
33
+ __exportStar(require("./enums/EntitlementKindEnum"), exports);
34
+ __exportStar(require("./enums/SaleCouponAvailabilityEnum"), exports);
35
+ __exportStar(require("./enums/RetailPromotionsErrorCodeEnum"), exports);
36
+ // Constantes y helpers puros
37
+ __exportStar(require("./constants/retailPromotionsErrorHttpStatus"), exports);
38
+ __exportStar(require("./constants/salePromotionTransitions"), exports);
39
+ __exportStar(require("./constants/bonusPreMoney"), exports);
40
+ __exportStar(require("./helpers/resolveSalePromotionTransition"), exports);
41
+ __exportStar(require("./helpers/computeBudgetUsedBps"), exports);
42
+ // Entidades del dominio
43
+ __exportStar(require("./dtos/DiscountValue"), exports);
44
+ __exportStar(require("./dtos/SalePromotionLevers"), exports);
45
+ __exportStar(require("./dtos/SalePromotion"), exports);
46
+ __exportStar(require("./dtos/SalePromotionLogEntry"), exports);
47
+ __exportStar(require("./dtos/DiscountCode"), exports);
48
+ __exportStar(require("./dtos/LinePromotionDiscount"), exports);
49
+ // Request DTOs
50
+ __exportStar(require("./dtos/requests/DiscountValueInput"), exports);
51
+ __exportStar(require("./dtos/requests/SalePromotionLeversInput"), exports);
52
+ __exportStar(require("./dtos/requests/SalePromotionScopeInput"), exports);
53
+ __exportStar(require("./dtos/requests/CreateSalePromotionRequest"), exports);
54
+ __exportStar(require("./dtos/requests/UpdateSalePromotionRequest"), exports);
55
+ __exportStar(require("./dtos/requests/ChangeSalePromotionStatusRequest"), exports);
56
+ __exportStar(require("./dtos/requests/ListSalePromotionsQuery"), exports);
57
+ __exportStar(require("./dtos/requests/ListSalePromotionLogQuery"), exports);
58
+ __exportStar(require("./dtos/requests/CreateDiscountCodeRequest"), exports);
59
+ __exportStar(require("./dtos/requests/ListDiscountCodesQuery"), exports);
60
+ __exportStar(require("./dtos/requests/ChangeDiscountCodeStatusRequest"), exports);
61
+ __exportStar(require("./dtos/requests/ListStoreSalePromotionsQuery"), exports);
62
+ __exportStar(require("./dtos/requests/EvaluateSalePromotionsRequest"), exports);
63
+ __exportStar(require("./dtos/requests/HoldSalePromotionRequest"), exports);
64
+ __exportStar(require("./dtos/requests/GetSaleCouponQuery"), exports);
65
+ // Response DTOs
66
+ __exportStar(require("./dtos/responses/SalePromotionCrudResponses"), exports);
67
+ __exportStar(require("./dtos/responses/DiscountCodeResponses"), exports);
68
+ __exportStar(require("./dtos/responses/WizardSalePromotionResponses"), exports);
@@ -26,18 +26,18 @@ export interface Sale {
26
26
  skus?: string[];
27
27
  /** La cancelación aún no confirma la devolución al inventario. */
28
28
  inventoryReturnPending?: boolean;
29
+ /** Venta de la saga: el inventario se aplica y se devuelve por la cola, no por HTTP. */
30
+ inventoryViaQueue?: boolean;
31
+ /** Promo de venta congelada al cerrar; `null` = ninguna. */
32
+ salePromotionId?: string | null;
33
+ salePromotionVersion?: number | null;
29
34
  /** IMEI consumido del silo también en contado (local-first); null en EXTERNAL_REFERRAL (D15). */
30
35
  imei: string | null;
31
- /**
32
- * Lo COBRADO en caja al cerrar. En contado == precio del equipo (lo garantiza `registerPayment`);
33
- * en crédito es SOLO el enganche. ⚠️ Su significado es contrato de `SaleCompletedV1` (La Central,
34
- * comisión F4): no redefinir — el precio del equipo viaja aparte en `equipmentPriceCents`. 0 en
35
- * EXTERNAL_REFERRAL.
36
- */
36
+ /** Lo cobrado en caja al cerrar: enganche + lo no financiado; 0 en EXTERNAL_REFERRAL. Contrato de `SaleCompletedV1`. */
37
37
  amountCents: number;
38
38
  /**
39
- * Precio de lista del equipo al cerrar (de la reserva de la sesión). En contado coincide con
40
- * `amountCents`; en crédito es el precio full financiado. `null` en ventas anteriores al campo.
39
+ * Ancla neta al cerrar (precio − discountCents de la ancla); base de comisión.
40
+ * `null` en ventas anteriores al campo.
41
41
  */
42
42
  equipmentPriceCents: number | null;
43
43
  /** Enganche cobrado (solo ventas CREDIT; `null` en contado/externa). */
@@ -1,8 +1,9 @@
1
1
  import type { SoldLineComponent } from '../../retailCatalog/dtos/responses/SellStockResponse';
2
2
  import type { LinePaymentTypeEnum } from '../enums/LinePaymentTypeEnum';
3
3
  import type { WizardLineProduct } from './WizardLineProduct';
4
+ import type { WizardLinePromotionFields } from './WizardLinePromotionFields';
4
5
  /** Línea de una venta cerrada; un producto suelto es un solo componente. */
5
- export interface SaleLine {
6
+ export interface SaleLine extends WizardLinePromotionFields {
6
7
  lineId: string;
7
8
  sku: string;
8
9
  qty: number;
@@ -11,6 +12,8 @@ export interface SaleLine {
11
12
  /** Llave del registro PRICE# del que salió el precio. */
12
13
  priceSk: string;
13
14
  paymentType: LinePaymentTypeEnum;
15
+ /** Parte financiada de la línea, congelada en la venta. */
16
+ financedCents?: number;
14
17
  components: SoldLineComponent[];
15
18
  product?: WizardLineProduct | null;
16
19
  }
@@ -0,0 +1,11 @@
1
+ /** Parte financiada de una línea en el reparto provisional. */
2
+ export interface WizardFinancingPreviewLine {
3
+ lineId: string;
4
+ financedCents: number;
5
+ }
6
+ /** Reparto provisional de la sesión; se calcula al leer y no se persiste. */
7
+ export interface WizardFinancingPreview {
8
+ /** Tope de extras financiables: floor(30% × ancla neta). */
9
+ capCents: number;
10
+ lines: WizardFinancingPreviewLine[];
11
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,10 @@
1
+ import type { WizardLineRoleEnum } from '../enums/WizardLineRoleEnum';
2
+ import type { WizardReservedLine } from './WizardReservedLine';
3
+ /** Línea GIFT: ligada a un ancla, con su promo y el precio de lista que se regala. */
4
+ export type WizardGiftLine = WizardReservedLine & {
5
+ role: WizardLineRoleEnum.GIFT;
6
+ linkedLineId: string;
7
+ promotionId: string;
8
+ promotionVersion: number;
9
+ originalPriceCents: number;
10
+ };
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });