@chevre/domain 24.0.0-alpha.4 → 24.0.0-alpha.40

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 (406) hide show
  1. package/lib/chevre/errorHandler.js +1 -1
  2. package/lib/chevre/factory/transaction.d.ts +0 -3
  3. package/lib/chevre/repo/accountTitle.d.ts +7 -3
  4. package/lib/chevre/repo/accountTransaction.js +1 -2
  5. package/lib/chevre/repo/action/acceptCOAOffer.d.ts +32 -0
  6. package/lib/chevre/repo/action/acceptCOAOffer.js +73 -0
  7. package/lib/chevre/repo/action/acceptPay.d.ts +40 -0
  8. package/lib/chevre/repo/action/acceptPay.js +93 -0
  9. package/lib/chevre/repo/action/actionProcess.d.ts +146 -0
  10. package/lib/chevre/repo/action/actionProcess.js +792 -0
  11. package/lib/chevre/repo/action/authorizeInvoice.d.ts +26 -0
  12. package/lib/chevre/repo/action/authorizeInvoice.js +49 -0
  13. package/lib/chevre/repo/action/authorizeOffer.d.ts +72 -0
  14. package/lib/chevre/repo/action/authorizeOffer.js +139 -0
  15. package/lib/chevre/repo/action/authorizePaymentMethod.d.ts +48 -0
  16. package/lib/chevre/repo/action/authorizePaymentMethod.js +64 -0
  17. package/lib/chevre/repo/action/authorizeProductOffer.d.ts +26 -0
  18. package/lib/chevre/repo/action/authorizeProductOffer.js +55 -0
  19. package/lib/chevre/repo/action/authorizeTicketedObject.d.ts +8 -0
  20. package/lib/chevre/repo/action/authorizeTicketedObject.js +11 -0
  21. package/lib/chevre/repo/action/checkMovieTicket.d.ts +111 -0
  22. package/lib/chevre/repo/action/checkMovieTicket.js +200 -0
  23. package/lib/chevre/repo/action/checkThing.d.ts +8 -0
  24. package/lib/chevre/repo/action/checkThing.js +13 -0
  25. package/lib/chevre/repo/action.d.ts +25 -269
  26. package/lib/chevre/repo/action.js +338 -1233
  27. package/lib/chevre/repo/aggregateAction.d.ts +102 -0
  28. package/lib/chevre/repo/aggregateAction.js +378 -0
  29. package/lib/chevre/repo/aggregateOffer.d.ts +10 -6
  30. package/lib/chevre/repo/aggregateOffer.js +1 -0
  31. package/lib/chevre/repo/assetTransaction.d.ts +47 -26
  32. package/lib/chevre/repo/assetTransaction.js +1 -0
  33. package/lib/chevre/repo/categoryCode.d.ts +8 -3
  34. package/lib/chevre/repo/comment.d.ts +7 -3
  35. package/lib/chevre/repo/creativeWork.d.ts +10 -9
  36. package/lib/chevre/repo/creativeWork.js +1 -0
  37. package/lib/chevre/repo/customer.d.ts +8 -3
  38. package/lib/chevre/repo/customerType.d.ts +1 -1
  39. package/lib/chevre/repo/customerType.js +1 -0
  40. package/lib/chevre/repo/event.d.ts +11 -23
  41. package/lib/chevre/repo/event.js +22 -23
  42. package/lib/chevre/repo/eventOffer.d.ts +3 -3
  43. package/lib/chevre/repo/eventOffer.js +1 -0
  44. package/lib/chevre/repo/eventSellerMakesOffer.d.ts +3 -3
  45. package/lib/chevre/repo/eventSellerMakesOffer.js +1 -0
  46. package/lib/chevre/repo/eventSeries.d.ts +10 -4
  47. package/lib/chevre/repo/identity.d.ts +12 -3
  48. package/lib/chevre/repo/identityProvider.d.ts +7 -18
  49. package/lib/chevre/repo/issuer.d.ts +8 -8
  50. package/lib/chevre/repo/member.d.ts +7 -3
  51. package/lib/chevre/repo/merchantReturnPolicy.d.ts +7 -3
  52. package/lib/chevre/repo/message.js +1 -1
  53. package/lib/chevre/repo/mongoose/schemas/acceptedPaymentMethod.d.ts +4 -3
  54. package/lib/chevre/repo/mongoose/schemas/account.d.ts +4 -3
  55. package/lib/chevre/repo/mongoose/schemas/accountTitle.d.ts +4 -3
  56. package/lib/chevre/repo/mongoose/schemas/accountTransaction.d.ts +5 -4
  57. package/lib/chevre/repo/mongoose/schemas/accountingReport.d.ts +3 -2
  58. package/lib/chevre/repo/mongoose/schemas/action.d.ts +4 -3
  59. package/lib/chevre/repo/mongoose/schemas/actionRecipe.d.ts +4 -3
  60. package/lib/chevre/repo/mongoose/schemas/additionalProperty.d.ts +5 -4
  61. package/lib/chevre/repo/mongoose/schemas/advanceBookingRequirement.d.ts +3 -2
  62. package/lib/chevre/repo/mongoose/schemas/aggregateOffer.d.ts +4 -3
  63. package/lib/chevre/repo/mongoose/schemas/aggregateOrder.d.ts +3 -2
  64. package/lib/chevre/repo/mongoose/schemas/aggregateReservation.d.ts +4 -3
  65. package/lib/chevre/repo/mongoose/schemas/aggregation.d.ts +4 -3
  66. package/lib/chevre/repo/mongoose/schemas/assetTransaction.d.ts +4 -3
  67. package/lib/chevre/repo/mongoose/schemas/authorization.d.ts +4 -3
  68. package/lib/chevre/repo/mongoose/schemas/categoryCode.d.ts +5 -4
  69. package/lib/chevre/repo/mongoose/schemas/civicStructure.d.ts +3 -2
  70. package/lib/chevre/repo/mongoose/schemas/comments.d.ts +4 -3
  71. package/lib/chevre/repo/mongoose/schemas/creativeWork.d.ts +5 -4
  72. package/lib/chevre/repo/mongoose/schemas/customer.d.ts +5 -4
  73. package/lib/chevre/repo/mongoose/schemas/customerType.d.ts +5 -4
  74. package/lib/chevre/repo/mongoose/schemas/emailMessages.d.ts +4 -3
  75. package/lib/chevre/repo/mongoose/schemas/event.d.ts +3 -2
  76. package/lib/chevre/repo/mongoose/schemas/eventOffer.d.ts +4 -3
  77. package/lib/chevre/repo/mongoose/schemas/eventSeries.d.ts +3 -2
  78. package/lib/chevre/repo/mongoose/schemas/identity.d.ts +4 -3
  79. package/lib/chevre/repo/mongoose/schemas/identityProvider.d.ts +4 -3
  80. package/lib/chevre/repo/mongoose/schemas/issuer.d.ts +4 -3
  81. package/lib/chevre/repo/mongoose/schemas/member/global.d.ts +4 -3
  82. package/lib/chevre/repo/mongoose/schemas/member.d.ts +4 -3
  83. package/lib/chevre/repo/mongoose/schemas/merchantReturnPolicy.d.ts +4 -3
  84. package/lib/chevre/repo/mongoose/schemas/message.d.ts +5 -4
  85. package/lib/chevre/repo/mongoose/schemas/movieTicketTypes.d.ts +4 -3
  86. package/lib/chevre/repo/mongoose/schemas/note.d.ts +3 -2
  87. package/lib/chevre/repo/mongoose/schemas/offerCatalog.d.ts +4 -3
  88. package/lib/chevre/repo/mongoose/schemas/offerCatalogItem.d.ts +4 -3
  89. package/lib/chevre/repo/mongoose/schemas/offerItemCondition.d.ts +5 -4
  90. package/lib/chevre/repo/mongoose/schemas/order.d.ts +4 -3
  91. package/lib/chevre/repo/mongoose/schemas/ownershipInfo.d.ts +6 -5
  92. package/lib/chevre/repo/mongoose/schemas/ownershipInfo.js +78 -71
  93. package/lib/chevre/repo/mongoose/schemas/paymentService.d.ts +4 -3
  94. package/lib/chevre/repo/mongoose/schemas/paymentServiceChannel.d.ts +4 -3
  95. package/lib/chevre/repo/mongoose/schemas/pendingReservation.d.ts +4 -3
  96. package/lib/chevre/repo/mongoose/schemas/pendingReservationAggregate.d.ts +4 -3
  97. package/lib/chevre/repo/mongoose/schemas/place.d.ts +3 -2
  98. package/lib/chevre/repo/mongoose/schemas/potentialAction.d.ts +4 -3
  99. package/lib/chevre/repo/mongoose/schemas/priceSpecification.d.ts +6 -3
  100. package/lib/chevre/repo/mongoose/schemas/product.d.ts +4 -3
  101. package/lib/chevre/repo/mongoose/schemas/productModel.d.ts +6 -5
  102. package/lib/chevre/repo/mongoose/schemas/productOffer.d.ts +3 -2
  103. package/lib/chevre/repo/mongoose/schemas/project.d.ts +4 -3
  104. package/lib/chevre/repo/mongoose/schemas/reservation.d.ts +5 -4
  105. package/lib/chevre/repo/mongoose/schemas/reserveInterface.d.ts +4 -3
  106. package/lib/chevre/repo/mongoose/schemas/role.d.ts +3 -2
  107. package/lib/chevre/repo/mongoose/schemas/schedule.d.ts +5 -4
  108. package/lib/chevre/repo/mongoose/schemas/seller.d.ts +4 -3
  109. package/lib/chevre/repo/mongoose/schemas/sellerReturnPolicy.d.ts +4 -3
  110. package/lib/chevre/repo/mongoose/schemas/service/availableHour.d.ts +3 -2
  111. package/lib/chevre/repo/mongoose/schemas/serviceOutput.d.ts +5 -4
  112. package/lib/chevre/repo/mongoose/schemas/setting.d.ts +4 -3
  113. package/lib/chevre/repo/mongoose/schemas/task.d.ts +4 -3
  114. package/lib/chevre/repo/mongoose/schemas/task.js +1 -0
  115. package/lib/chevre/repo/mongoose/schemas/ticket.d.ts +4 -3
  116. package/lib/chevre/repo/mongoose/schemas/transaction.d.ts +7 -4
  117. package/lib/chevre/repo/mongoose/schemas/transaction.js +31 -0
  118. package/lib/chevre/repo/mongoose/schemas/transactionNumber.d.ts +3 -2
  119. package/lib/chevre/repo/mongoose/schemas/trip.d.ts +4 -3
  120. package/lib/chevre/repo/mongoose/schemas/webSite.d.ts +4 -3
  121. package/lib/chevre/repo/mongoose/virtuals.d.ts +3 -0
  122. package/lib/chevre/repo/mongoose/virtuals.js +2 -0
  123. package/lib/chevre/repo/movieTicketType.d.ts +2 -1
  124. package/lib/chevre/repo/note.d.ts +3 -3
  125. package/lib/chevre/repo/note.js +1 -0
  126. package/lib/chevre/repo/noteAboutOrder.d.ts +1 -1
  127. package/lib/chevre/repo/noteAboutOrder.js +1 -0
  128. package/lib/chevre/repo/offerCatalog.d.ts +11 -7
  129. package/lib/chevre/repo/offerCatalog.js +1 -0
  130. package/lib/chevre/repo/offerCatalogItem.d.ts +3 -3
  131. package/lib/chevre/repo/offerCatalogItem.js +1 -0
  132. package/lib/chevre/repo/order.d.ts +8 -7
  133. package/lib/chevre/repo/order.js +3 -1
  134. package/lib/chevre/repo/orderInTransaction.d.ts +8 -0
  135. package/lib/chevre/repo/orderInTransaction.js +16 -2
  136. package/lib/chevre/repo/orderNumber.d.ts +3 -2
  137. package/lib/chevre/repo/orderNumber.js +23 -28
  138. package/lib/chevre/repo/ownershipInfo.d.ts +15 -8
  139. package/lib/chevre/repo/ownershipInfo.js +13 -10
  140. package/lib/chevre/repo/passport.d.ts +1 -1
  141. package/lib/chevre/repo/paymentService.d.ts +0 -13
  142. package/lib/chevre/repo/paymentService.js +5 -5
  143. package/lib/chevre/repo/pendingReservation.js +0 -1
  144. package/lib/chevre/repo/place/hasPOS.js +3 -3
  145. package/lib/chevre/repo/place/movieTheater.d.ts +7 -3
  146. package/lib/chevre/repo/place/screeningRoom.d.ts +7 -3
  147. package/lib/chevre/repo/place/seat.d.ts +6 -6
  148. package/lib/chevre/repo/place/seat.js +3 -0
  149. package/lib/chevre/repo/potentialAction.d.ts +7 -26
  150. package/lib/chevre/repo/priceSpecification.d.ts +51 -24
  151. package/lib/chevre/repo/priceSpecification.js +9 -13
  152. package/lib/chevre/repo/product.d.ts +11 -7
  153. package/lib/chevre/repo/product.js +1 -0
  154. package/lib/chevre/repo/productModel.d.ts +3 -1
  155. package/lib/chevre/repo/productModel.js +15 -11
  156. package/lib/chevre/repo/productOffer.d.ts +3 -3
  157. package/lib/chevre/repo/productOffer.js +1 -0
  158. package/lib/chevre/repo/project.d.ts +8 -11
  159. package/lib/chevre/repo/reservation.d.ts +12 -29
  160. package/lib/chevre/repo/reservation.js +36 -48
  161. package/lib/chevre/repo/reserveInterface.js +4 -4
  162. package/lib/chevre/repo/role.d.ts +39 -3
  163. package/lib/chevre/repo/schedule.js +1 -1
  164. package/lib/chevre/repo/seller.d.ts +7 -50
  165. package/lib/chevre/repo/sellerMakesOffer.d.ts +2 -2
  166. package/lib/chevre/repo/sellerMakesOffer.js +2 -0
  167. package/lib/chevre/repo/task.d.ts +8 -68
  168. package/lib/chevre/repo/transaction/placeOrder.d.ts +140 -0
  169. package/lib/chevre/repo/transaction/placeOrder.js +528 -0
  170. package/lib/chevre/repo/transaction/returnOrder.d.ts +45 -0
  171. package/lib/chevre/repo/transaction/returnOrder.js +341 -0
  172. package/lib/chevre/repo/transaction.d.ts +71 -142
  173. package/lib/chevre/repo/transaction.js +727 -632
  174. package/lib/chevre/repository.d.ts +64 -5
  175. package/lib/chevre/repository.js +140 -13
  176. package/lib/chevre/service/aggregation/system.d.ts +10 -10
  177. package/lib/chevre/service/aggregation/system.js +9 -9
  178. package/lib/chevre/service/assetTransaction/cancelReservation/factory.js +1 -17
  179. package/lib/chevre/service/assetTransaction/pay/check.d.ts +5 -4
  180. package/lib/chevre/service/assetTransaction/pay/publishPaymentUrl.d.ts +7 -4
  181. package/lib/chevre/service/assetTransaction/pay/publishPaymentUrl.js +3 -3
  182. package/lib/chevre/service/assetTransaction/pay/start/factory.d.ts +51 -3
  183. package/lib/chevre/service/assetTransaction/pay/start/factory.js +58 -21
  184. package/lib/chevre/service/assetTransaction/pay/start/preStart/fixPaymentService.d.ts +10 -0
  185. package/lib/chevre/service/assetTransaction/pay/start/preStart/fixPaymentService.js +88 -0
  186. package/lib/chevre/service/assetTransaction/pay/start/processAuthorize.d.ts +57 -0
  187. package/lib/chevre/service/assetTransaction/pay/start/processAuthorize.js +56 -0
  188. package/lib/chevre/service/assetTransaction/pay/start/processAuthorizeCreditCard.d.ts +2 -2
  189. package/lib/chevre/service/assetTransaction/pay/start/processAuthorizeMovieTicket.d.ts +3 -1
  190. package/lib/chevre/service/assetTransaction/pay/start/processAuthorizeMovieTicket.js +1 -11
  191. package/lib/chevre/service/assetTransaction/pay/start.d.ts +4 -0
  192. package/lib/chevre/service/assetTransaction/pay/start.js +8 -132
  193. package/lib/chevre/service/assetTransaction/reserve/start/factory/createReservation.js +1 -41
  194. package/lib/chevre/service/assetTransaction/reserve/start/factory/createStartParams.js +1 -11
  195. package/lib/chevre/service/assetTransaction/reserve/start.js +2 -5
  196. package/lib/chevre/service/assetTransaction/reserveCOA/cancel.d.ts +19 -4
  197. package/lib/chevre/service/assetTransaction/reserveCOA/cancel.js +7 -1
  198. package/lib/chevre/service/assetTransaction.d.ts +1 -1
  199. package/lib/chevre/service/delivery/factory.js +44 -41
  200. package/lib/chevre/service/delivery/product/factory.js +2 -4
  201. package/lib/chevre/service/delivery/reservation/factory.js +17 -22
  202. package/lib/chevre/service/notification/triggerWebhook.d.ts +7 -6
  203. package/lib/chevre/service/offer/any.d.ts +1 -1
  204. package/lib/chevre/service/offer/event/authorize/factory.js +0 -40
  205. package/lib/chevre/service/offer/event/authorize/processStartReserve4chevre.d.ts +0 -2
  206. package/lib/chevre/service/offer/event/authorize.d.ts +6 -5
  207. package/lib/chevre/service/offer/event/authorize.js +25 -24
  208. package/lib/chevre/service/offer/event/issueEventOfferTicket.d.ts +17 -15
  209. package/lib/chevre/service/offer/event/issueEventOfferTicket.js +4 -4
  210. package/lib/chevre/service/offer/event/voidTransaction/processVoidTransaction4chevre.d.ts +0 -2
  211. package/lib/chevre/service/offer/event/voidTransaction/processVoidTransaction4chevre.js +1 -0
  212. package/lib/chevre/service/offer/event/voidTransaction/processVoidTransaction4coa.d.ts +2 -0
  213. package/lib/chevre/service/offer/event/voidTransaction.d.ts +10 -3
  214. package/lib/chevre/service/offer/event/voidTransaction.js +14 -13
  215. package/lib/chevre/service/offer/event/voidTransactionByActionId.d.ts +8 -3
  216. package/lib/chevre/service/offer/event/voidTransactionByActionId.js +4 -4
  217. package/lib/chevre/service/offer/eventServiceByCOA/acceptOffer.d.ts +16 -5
  218. package/lib/chevre/service/offer/eventServiceByCOA/acceptOffer.js +7 -7
  219. package/lib/chevre/service/offer/eventServiceByCOA/authorize/factory.js +0 -2
  220. package/lib/chevre/service/offer/eventServiceByCOA/authorize.d.ts +6 -4
  221. package/lib/chevre/service/offer/eventServiceByCOA/authorize.js +3 -10
  222. package/lib/chevre/service/offer/eventServiceByCOA/authorizeByAcceptAction.js +21 -13
  223. package/lib/chevre/service/offer/eventServiceByCOA/changeOffers.js +19 -10
  224. package/lib/chevre/service/offer/eventServiceByCOA/findAcceptAction.d.ts +2 -2
  225. package/lib/chevre/service/offer/product/factory.d.ts +5 -5
  226. package/lib/chevre/service/offer/product/factory.js +13 -5
  227. package/lib/chevre/service/offer/product.d.ts +9 -7
  228. package/lib/chevre/service/offer/product.js +20 -16
  229. package/lib/chevre/service/offer.d.ts +1 -2
  230. package/lib/chevre/service/offer.js +1 -3
  231. package/lib/chevre/service/order/confirmPayTransaction.d.ts +0 -2
  232. package/lib/chevre/service/order/confirmPayTransaction.js +1 -0
  233. package/lib/chevre/service/order/deleteOrder.js +2 -2
  234. package/lib/chevre/service/order/findPlaceOrderTransaction.d.ts +2 -2
  235. package/lib/chevre/service/order/findPlaceOrderTransaction.js +1 -1
  236. package/lib/chevre/service/order/onAssetTransactionStatusChanged/isDeliverable.d.ts +16 -0
  237. package/lib/chevre/service/order/onAssetTransactionStatusChanged/isDeliverable.js +97 -0
  238. package/lib/chevre/service/order/onAssetTransactionStatusChanged/onPayTransactionCanceled.d.ts +21 -0
  239. package/lib/chevre/service/order/onAssetTransactionStatusChanged/onPayTransactionCanceled.js +86 -0
  240. package/lib/chevre/service/order/onAssetTransactionStatusChanged/onPayTransactionConfirmed.d.ts +22 -0
  241. package/lib/chevre/service/order/onAssetTransactionStatusChanged/onPayTransactionConfirmed.js +112 -0
  242. package/lib/chevre/service/order/onAssetTransactionStatusChanged/onReserveTransactionConfirmed.d.ts +22 -0
  243. package/lib/chevre/service/order/onAssetTransactionStatusChanged/onReserveTransactionConfirmed.js +74 -0
  244. package/lib/chevre/service/order/onAssetTransactionStatusChanged/paymentDue2Processing.d.ts +25 -0
  245. package/lib/chevre/service/order/onAssetTransactionStatusChanged/paymentDue2Processing.js +111 -0
  246. package/lib/chevre/service/order/onAssetTransactionStatusChanged/processing2inTransit.d.ts +16 -0
  247. package/lib/chevre/service/order/onAssetTransactionStatusChanged/processing2inTransit.js +74 -0
  248. package/lib/chevre/service/order/onAssetTransactionStatusChanged.d.ts +8 -30
  249. package/lib/chevre/service/order/onAssetTransactionStatusChanged.js +37 -348
  250. package/lib/chevre/service/order/onOrderStatusChanged/onOrderCancelled/factory.d.ts +1 -1
  251. package/lib/chevre/service/order/onOrderStatusChanged/onOrderDelivered.d.ts +6 -7
  252. package/lib/chevre/service/order/onOrderStatusChanged/onOrderDeliveredPartially/factory.d.ts +1 -1
  253. package/lib/chevre/service/order/onOrderStatusChanged/onOrderDeliveredPartially.d.ts +6 -5
  254. package/lib/chevre/service/order/onOrderStatusChanged/onOrderInTransit.d.ts +7 -6
  255. package/lib/chevre/service/order/onOrderStatusChanged/onOrderInTransit.js +1 -1
  256. package/lib/chevre/service/order/onOrderStatusChanged/onOrderProcessing/processOrder.js +54 -37
  257. package/lib/chevre/service/order/onOrderStatusChanged/onOrderReturned/factory.d.ts +1 -1
  258. package/lib/chevre/service/order/onOrderStatusChanged/onOrderReturned.js +78 -64
  259. package/lib/chevre/service/order/payOrder.d.ts +2 -2
  260. package/lib/chevre/service/order/placeOrder/createPlacingOrderFromExistingTransaction.d.ts +12 -8
  261. package/lib/chevre/service/order/placeOrder/createPlacingOrderFromExistingTransaction.js +41 -26
  262. package/lib/chevre/service/order/placeOrder/factory/orderedItem.d.ts +0 -1
  263. package/lib/chevre/service/order/placeOrder/factory/orderedItem.js +3 -28
  264. package/lib/chevre/service/order/placeOrder/factory.js +5 -6
  265. package/lib/chevre/service/order/placeOrder.d.ts +17 -12
  266. package/lib/chevre/service/order/placeOrder.js +7 -2
  267. package/lib/chevre/service/order/returnOrder.d.ts +2 -2
  268. package/lib/chevre/service/order/returnOrder.js +1 -1
  269. package/lib/chevre/service/order/sendOrder.d.ts +6 -6
  270. package/lib/chevre/service/order/sendOrder.js +14 -10
  271. package/lib/chevre/service/order.d.ts +3 -6
  272. package/lib/chevre/service/order.js +3 -9
  273. package/lib/chevre/service/payment/any/{fixOrderAsNeeded.d.ts → authorize/fixOrderAsNeeded.d.ts} +6 -6
  274. package/lib/chevre/service/payment/any/{fixOrderAsNeeded.js → authorize/fixOrderAsNeeded.js} +5 -8
  275. package/lib/chevre/service/payment/any/authorize/fixTransactionNumber.d.ts +8 -5
  276. package/lib/chevre/service/payment/any/authorize/handlePrePublishedPaymentMethodIdOnAuthorizing.d.ts +14 -10
  277. package/lib/chevre/service/payment/any/authorize/handlePrePublishedPaymentMethodIdOnAuthorizing.js +34 -17
  278. package/lib/chevre/service/payment/any/authorize.d.ts +98 -0
  279. package/lib/chevre/service/payment/any/authorize.js +239 -0
  280. package/lib/chevre/service/payment/any/factory.js +1 -0
  281. package/lib/chevre/service/payment/any/findAcceptAction.d.ts +43 -0
  282. package/lib/chevre/service/payment/any/findAcceptAction.js +94 -0
  283. package/lib/chevre/service/payment/any/findAuthorizeAction.d.ts +42 -0
  284. package/lib/chevre/service/payment/any/findAuthorizeAction.js +83 -0
  285. package/lib/chevre/service/payment/any/findCheckAction.d.ts +45 -0
  286. package/lib/chevre/service/payment/any/findCheckAction.js +89 -0
  287. package/lib/chevre/service/payment/any/invalidatePaymentUrl.d.ts +29 -0
  288. package/lib/chevre/service/payment/any/invalidatePaymentUrl.js +187 -0
  289. package/lib/chevre/service/payment/any/onPayActionCompleted.d.ts +7 -3
  290. package/lib/chevre/service/payment/any/onPayActionCompleted.js +3 -0
  291. package/lib/chevre/service/payment/any/processVoidPayTransaction.d.ts +30 -0
  292. package/lib/chevre/service/payment/any/processVoidPayTransaction.js +125 -0
  293. package/lib/chevre/service/payment/any/publishPaymentUrl/fixTransactionNumberOnPublishPaymentUrl.d.ts +2 -2
  294. package/lib/chevre/service/payment/any/publishPaymentUrl.d.ts +66 -0
  295. package/lib/chevre/service/payment/any/publishPaymentUrl.js +133 -0
  296. package/lib/chevre/service/payment/any/voidPayTransaction.d.ts +34 -0
  297. package/lib/chevre/service/payment/any/voidPayTransaction.js +38 -0
  298. package/lib/chevre/service/payment/any.d.ts +8 -305
  299. package/lib/chevre/service/payment/any.js +17 -857
  300. package/lib/chevre/service/payment/creditCard/authorize/processAuthorizeCreditCard.d.ts +8 -6
  301. package/lib/chevre/service/payment/creditCard/authorize/processAuthorizeCreditCard.js +3 -3
  302. package/lib/chevre/service/payment/creditCard/authorize/processAuthorizeCreditCard3ds.d.ts +8 -6
  303. package/lib/chevre/service/payment/creditCard/authorize/processAuthorizeCreditCard3ds.js +3 -3
  304. package/lib/chevre/service/payment/creditCard/authorize.d.ts +3 -2
  305. package/lib/chevre/service/payment/creditCard/authorize.js +2 -2
  306. package/lib/chevre/service/payment/creditCard/voidTransaction.d.ts +9 -8
  307. package/lib/chevre/service/payment/creditCard/voidTransaction.js +15 -7
  308. package/lib/chevre/service/payment/movieTicket/authorize.d.ts +2 -0
  309. package/lib/chevre/service/payment/movieTicket/checkMovieTicket.d.ts +3 -3
  310. package/lib/chevre/service/payment/movieTicket/checkMovieTicket.js +3 -3
  311. package/lib/chevre/service/payment/movieTicket/validation.d.ts +11 -10
  312. package/lib/chevre/service/payment/movieTicket/validation.js +25 -15
  313. package/lib/chevre/service/reserve/cancelReservation.js +5 -12
  314. package/lib/chevre/service/reserve/confirmReservation.js +1 -1
  315. package/lib/chevre/service/reserve/findByCode.d.ts +1 -1
  316. package/lib/chevre/service/reserve/potentialActions/onReservationCanceled.d.ts +1 -2
  317. package/lib/chevre/service/reserve/potentialActions/onReservationCanceled.js +1 -0
  318. package/lib/chevre/service/reserve/searchByOrder.d.ts +1 -1
  319. package/lib/chevre/service/task/acceptCOAOffer.js +11 -6
  320. package/lib/chevre/service/task/authorizePayment.js +16 -5
  321. package/lib/chevre/service/task/checkMovieTicket.js +3 -3
  322. package/lib/chevre/service/task/checkResource.js +2 -2
  323. package/lib/chevre/service/task/confirmPayTransaction.js +2 -2
  324. package/lib/chevre/service/task/deletePerson.js +0 -1
  325. package/lib/chevre/service/task/deleteTransaction.js +5 -1
  326. package/lib/chevre/service/task/onAssetTransactionStatusChanged.js +4 -2
  327. package/lib/chevre/service/task/onOrderPaymentCompleted.js +2 -2
  328. package/lib/chevre/service/task/pay.js +3 -1
  329. package/lib/chevre/service/task/payment/payByTask.d.ts +15 -12
  330. package/lib/chevre/service/task/payment/payByTask.js +1 -1
  331. package/lib/chevre/service/task/payment/voidPaymentByTask.d.ts +2 -0
  332. package/lib/chevre/service/task/placeOrder.js +10 -4
  333. package/lib/chevre/service/task/publishPaymentUrl.js +11 -5
  334. package/lib/chevre/service/task/returnOrder.js +4 -4
  335. package/lib/chevre/service/task/returnPayTransaction.js +4 -3
  336. package/lib/chevre/service/task/sendOrder.js +4 -4
  337. package/lib/chevre/service/task/syncResourcesFromCOA.js +2 -0
  338. package/lib/chevre/service/task/voidPayTransaction.js +10 -4
  339. package/lib/chevre/service/task/voidPayment.js +2 -0
  340. package/lib/chevre/service/task/voidRegisterServiceTransaction.js +7 -6
  341. package/lib/chevre/service/task/voidReserveTransaction.js +8 -3
  342. package/lib/chevre/service/transaction/deleteTransaction.d.ts +4 -0
  343. package/lib/chevre/service/transaction/deleteTransaction.js +45 -47
  344. package/lib/chevre/service/transaction/placeOrder/confirm/validation/factory.d.ts +1 -1
  345. package/lib/chevre/service/transaction/placeOrder/confirm/validation/validatePrice.d.ts +2 -2
  346. package/lib/chevre/service/transaction/placeOrder/confirm/validation/validatePrice.js +2 -3
  347. package/lib/chevre/service/transaction/placeOrder/confirm/validation.d.ts +3 -3
  348. package/lib/chevre/service/transaction/placeOrder/confirm/validation.js +4 -6
  349. package/lib/chevre/service/transaction/placeOrder/confirm.d.ts +10 -5
  350. package/lib/chevre/service/transaction/placeOrder/confirm.js +77 -53
  351. package/lib/chevre/service/transaction/placeOrder/exportTasks/factory.js +2 -15
  352. package/lib/chevre/service/transaction/placeOrder/exportTasksById.d.ts +7 -6
  353. package/lib/chevre/service/transaction/placeOrder/exportTasksById.js +1 -1
  354. package/lib/chevre/service/transaction/placeOrder/{publishOrderNumberIfNotExist.d.ts → issueOrderNumberIfNotExist.d.ts} +4 -4
  355. package/lib/chevre/service/transaction/placeOrder/{publishOrderNumberIfNotExist.js → issueOrderNumberIfNotExist.js} +21 -13
  356. package/lib/chevre/service/transaction/placeOrder/publishConfirmationNumberIfNotExist.d.ts +2 -2
  357. package/lib/chevre/service/transaction/placeOrder/publishConfirmationNumberIfNotExist.js +3 -3
  358. package/lib/chevre/service/transaction/placeOrder/start.d.ts +3 -3
  359. package/lib/chevre/service/transaction/placeOrder/start.js +2 -2
  360. package/lib/chevre/service/transaction/placeOrder/updateAgent.d.ts +23 -0
  361. package/lib/chevre/service/transaction/placeOrder/updateAgent.js +126 -0
  362. package/lib/chevre/service/transaction/placeOrder.d.ts +2 -1
  363. package/lib/chevre/service/transaction/placeOrder.js +3 -1
  364. package/lib/chevre/service/transaction/returnOrder/preStart.d.ts +1 -1
  365. package/lib/chevre/service/transaction/returnOrder.d.ts +16 -14
  366. package/lib/chevre/service/transaction/returnOrder.js +4 -4
  367. package/lib/chevre/service/transaction.d.ts +8 -24
  368. package/lib/chevre/service/transaction.js +6 -122
  369. package/lib/chevre/service/validation/validateOrder.js +3 -5
  370. package/lib/chevre/service.d.ts +0 -4
  371. package/lib/chevre/service.js +1 -12
  372. package/package.json +5 -5
  373. package/lib/chevre/repo/mongoose/schemas/telemetry.d.ts +0 -9
  374. package/lib/chevre/repo/mongoose/schemas/telemetry.js +0 -80
  375. package/lib/chevre/repo/telemetry.d.ts +0 -9
  376. package/lib/chevre/repo/telemetry.js +0 -14
  377. package/lib/chevre/service/offer/moneyTransfer/authorize.d.ts +0 -37
  378. package/lib/chevre/service/offer/moneyTransfer/authorize.js +0 -247
  379. package/lib/chevre/service/offer/moneyTransfer/returnMoneyTransfer.d.ts +0 -16
  380. package/lib/chevre/service/offer/moneyTransfer/returnMoneyTransfer.js +0 -96
  381. package/lib/chevre/service/offer/moneyTransfer/settleTransaction.d.ts +0 -9
  382. package/lib/chevre/service/offer/moneyTransfer/settleTransaction.js +0 -91
  383. package/lib/chevre/service/offer/moneyTransfer/voidTransaction.d.ts +0 -9
  384. package/lib/chevre/service/offer/moneyTransfer/voidTransaction.js +0 -78
  385. package/lib/chevre/service/offer/moneyTransfer.d.ts +0 -5
  386. package/lib/chevre/service/offer/moneyTransfer.js +0 -11
  387. package/lib/chevre/service/report/ownershipInfo.d.ts +0 -27
  388. package/lib/chevre/service/report/ownershipInfo.js +0 -39
  389. package/lib/chevre/service/report/telemetry.d.ts +0 -309
  390. package/lib/chevre/service/report/telemetry.js +0 -449
  391. package/lib/chevre/service/report.d.ts +0 -6
  392. package/lib/chevre/service/report.js +0 -33
  393. package/lib/chevre/service/task/confirmMoneyTransfer.d.ts +0 -6
  394. package/lib/chevre/service/task/confirmMoneyTransfer.js +0 -19
  395. package/lib/chevre/service/task/returnMoneyTransfer.d.ts +0 -6
  396. package/lib/chevre/service/task/returnMoneyTransfer.js +0 -55
  397. package/lib/chevre/service/task/voidMoneyTransferTransaction.d.ts +0 -6
  398. package/lib/chevre/service/task/voidMoneyTransferTransaction.js +0 -22
  399. package/lib/chevre/service/transaction/moneyTransfer/exportTasks/factory.d.ts +0 -9
  400. package/lib/chevre/service/transaction/moneyTransfer/exportTasks/factory.js +0 -138
  401. package/lib/chevre/service/transaction/moneyTransfer/factory.d.ts +0 -2
  402. package/lib/chevre/service/transaction/moneyTransfer/factory.js +0 -55
  403. package/lib/chevre/service/transaction/moneyTransfer/potentialActions.d.ts +0 -9
  404. package/lib/chevre/service/transaction/moneyTransfer/potentialActions.js +0 -65
  405. package/lib/chevre/service/transaction/moneyTransfer.d.ts +0 -69
  406. package/lib/chevre/service/transaction/moneyTransfer.js +0 -649
@@ -0,0 +1,187 @@
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.invalidatePaymentUrl = invalidatePaymentUrl;
27
+ const factory = __importStar(require("../../../factory"));
28
+ /**
29
+ * 決済承認中止タスクから決済URLを無効化する
30
+ */
31
+ function invalidatePaymentUrl(params) {
32
+ return async (repos
33
+ // settings: Settings
34
+ ) => {
35
+ if (params.purpose.typeOf !== factory.transactionType.PlaceOrder) {
36
+ throw new factory.errors.Argument('purpose.typeOf', `must be ${factory.transactionType.PlaceOrder}`);
37
+ }
38
+ const transaction = await repos.placeOrder.findPlaceOrderById({
39
+ typeOf: params.purpose.typeOf,
40
+ id: params.purpose.id
41
+ }, ['typeOf', 'status', 'object', 'project', 'seller', 'agent']);
42
+ // const orderCancelled: boolean = params.purpose.result?.order?.orderStatus === factory.orderStatus.OrderCancelled;
43
+ // if (transaction.status === factory.transactionStatusType.Confirmed) {
44
+ // if (!orderCancelled) {
45
+ // // no op
46
+ // return;
47
+ // }
48
+ // }
49
+ // support multiple accept actions(2025-02-25~)
50
+ let acceptPayActions = await repos.acceptPayAction.findAcceptActionsByPurpose({
51
+ // project: { id: { $eq: transaction.project.id } },
52
+ // typeOf: { $eq: factory.actionType.AcceptAction },
53
+ // // actionStatus: { $in: [factory.actionStatusType.CompletedActionStatus] }, // all statuses(2025-02-26~)
54
+ // purpose: { id: { $in: [transaction.id] } },
55
+ // object: {
56
+ // // transactionNumber: { $eq: paymentMethodIdByPaymentUrl },
57
+ // typeOf: { $eq: factory.assetTransactionType.Pay }
58
+ // }
59
+ project: { id: transaction.project.id },
60
+ purpose: { id: transaction.id },
61
+ }, ['object']);
62
+ switch (transaction.status) {
63
+ case factory.transactionStatusType.InProgress:
64
+ throw new factory.errors.NotImplemented(`${transaction.status} not implemented`);
65
+ case factory.transactionStatusType.Confirmed:
66
+ // support OrderCanceled(2025-02-25~)
67
+ const orderCancelled = params.purpose.result?.order?.orderStatus === factory.orderStatus.OrderCancelled;
68
+ if (!orderCancelled) {
69
+ const paymentMethodIdByPaymentUrl = transaction.object.paymentMethods?.paymentMethodId;
70
+ if (typeof paymentMethodIdByPaymentUrl === 'string') {
71
+ acceptPayActions = acceptPayActions.filter(({ object }) => object.transactionNumber !== paymentMethodIdByPaymentUrl);
72
+ }
73
+ }
74
+ break;
75
+ default:
76
+ // no op
77
+ }
78
+ const invalidatePaymentUrlTasks = [];
79
+ const runsAt = new Date();
80
+ for (const acceptPayAction of acceptPayActions) {
81
+ const paymentMethodIdByPaymentUrl = acceptPayAction.object.transactionNumber;
82
+ const paymentMethodType = acceptPayAction.object.object.paymentMethod.identifier;
83
+ if (typeof paymentMethodType === 'string' && paymentMethodType.length > 0) {
84
+ // create task(2025-02-26~)
85
+ // await PayTransactionService.invalidatePaymentUrl({})(repos, settings);
86
+ const invalidatePaymentUrlData = {
87
+ project: transaction.project,
88
+ typeOf: factory.actionType.RefundAction,
89
+ agent: {
90
+ typeOf: transaction.seller.typeOf,
91
+ name: (typeof transaction.seller.name === 'string')
92
+ ? transaction.seller.name
93
+ : String(transaction.seller.name?.ja),
94
+ id: transaction.seller.id
95
+ },
96
+ recipient: {
97
+ typeOf: transaction.agent.typeOf,
98
+ id: transaction.agent.id,
99
+ name: transaction.agent.name
100
+ },
101
+ object: [{
102
+ typeOf: factory.service.paymentService.PaymentServiceType.CreditCard,
103
+ id: acceptPayAction.object.object.id,
104
+ paymentMethod: {
105
+ additionalProperty: [],
106
+ name: paymentMethodType,
107
+ typeOf: paymentMethodType,
108
+ paymentMethodId: paymentMethodIdByPaymentUrl
109
+ },
110
+ refundFee: 0
111
+ }],
112
+ purpose: { typeOf: transaction.typeOf, id: transaction.id },
113
+ instrument: []
114
+ // ...(typeof params.sameAs?.id === 'string') ? { sameAs: params.sameAs } : undefined
115
+ };
116
+ invalidatePaymentUrlTasks.push({
117
+ project: transaction.project,
118
+ name: factory.taskName.InvalidatePaymentUrl,
119
+ status: factory.taskStatus.Ready,
120
+ runsAt,
121
+ remainingNumberOfTries: 10,
122
+ numberOfTried: 0,
123
+ executionResults: [],
124
+ data: invalidatePaymentUrlData
125
+ });
126
+ }
127
+ }
128
+ if (invalidatePaymentUrlTasks.length > 0) {
129
+ await repos.task.saveMany(invalidatePaymentUrlTasks, { emitImmediately: true });
130
+ }
131
+ // const paymentMethodIdByPaymentUrl = transaction.object.paymentMethods?.paymentMethodId;
132
+ // if (typeof paymentMethodIdByPaymentUrl === 'string' && paymentMethodIdByPaymentUrl.length > 0) {
133
+ // const acceptPayAction = (<Pick<IAcceptPayAction, 'object'>[]>await repos.action.search(
134
+ // {
135
+ // limit: 1,
136
+ // page: 1,
137
+ // project: { id: { $eq: transaction.project.id } },
138
+ // typeOf: { $eq: factory.actionType.AcceptAction },
139
+ // actionStatus: { $in: [factory.actionStatusType.CompletedActionStatus] },
140
+ // purpose: { id: { $in: [transaction.id] } },
141
+ // object: {
142
+ // transactionNumber: { $eq: paymentMethodIdByPaymentUrl },
143
+ // typeOf: { $eq: factory.assetTransactionType.Pay }
144
+ // }
145
+ // },
146
+ // ['object']
147
+ // )).shift();
148
+ // if (acceptPayAction !== undefined) {
149
+ // // const paymentMethodType = transaction.object.paymentMethods?.typeOf;
150
+ // const paymentMethodType = acceptPayAction.object.object.paymentMethod.identifier;
151
+ // if (typeof paymentMethodType === 'string' && paymentMethodType.length > 0) {
152
+ // // chevreで決済URL無効化
153
+ // await PayTransactionService.invalidatePaymentUrl({
154
+ // project: transaction.project,
155
+ // typeOf: factory.actionType.RefundAction,
156
+ // agent: {
157
+ // typeOf: transaction.seller.typeOf,
158
+ // name: (typeof transaction.seller.name === 'string')
159
+ // ? transaction.seller.name
160
+ // : String(transaction.seller.name?.ja),
161
+ // id: transaction.seller.id
162
+ // },
163
+ // recipient: {
164
+ // typeOf: transaction.agent.typeOf,
165
+ // id: transaction.agent.id,
166
+ // name: transaction.agent.name
167
+ // },
168
+ // object: [{
169
+ // typeOf: factory.service.paymentService.PaymentServiceType.CreditCard,
170
+ // id: acceptPayAction.object.object.id,
171
+ // paymentMethod: {
172
+ // additionalProperty: [],
173
+ // name: paymentMethodType,
174
+ // typeOf: paymentMethodType,
175
+ // paymentMethodId: paymentMethodIdByPaymentUrl
176
+ // },
177
+ // refundFee: 0
178
+ // }],
179
+ // purpose: { typeOf: transaction.typeOf, id: transaction.id },
180
+ // instrument: [],
181
+ // ...(typeof params.sameAs?.id === 'string') ? { sameAs: params.sameAs } : undefined
182
+ // })(repos, settings);
183
+ // }
184
+ // }
185
+ // }
186
+ };
187
+ }
@@ -5,9 +5,13 @@ import * as factory from '../../../factory';
5
5
  import type { AccountingReportRepo } from '../../../repo/accountingReport';
6
6
  import type { ActionRepo } from '../../../repo/action';
7
7
  import type { TaskRepo } from '../../../repo/task';
8
- declare function onPayActionCompleted(payAction: Pick<factory.action.trade.pay.IAction, 'id' | 'object' | 'potentialActions' | 'project' | 'purpose' | 'typeOf'>): (repos: {
8
+ interface IOnPayActionCompletedRepos {
9
9
  action: ActionRepo;
10
10
  accountingReport: AccountingReportRepo;
11
11
  task: TaskRepo;
12
- }) => Promise<void>;
13
- export { onPayActionCompleted };
12
+ }
13
+ /**
14
+ * 決済アクション完了時処理
15
+ */
16
+ declare function onPayActionCompleted(payAction: Pick<factory.action.trade.pay.IAction, 'id' | 'object' | 'potentialActions' | 'project' | 'purpose' | 'typeOf'>): (repos: IOnPayActionCompletedRepos) => Promise<void>;
17
+ export { IOnPayActionCompletedRepos, onPayActionCompleted };
@@ -30,6 +30,9 @@ exports.onPayActionCompleted = onPayActionCompleted;
30
30
  const factory = __importStar(require("../../../factory"));
31
31
  const factory_1 = require("./factory");
32
32
  const onPaymentStatusChanged_1 = require("./onPaymentStatusChanged");
33
+ /**
34
+ * 決済アクション完了時処理
35
+ */
33
36
  function onPayActionCompleted(payAction) {
34
37
  return async (repos) => {
35
38
  const aciton4inform = (0, factory_1.optimizeAction4inform)(payAction);
@@ -0,0 +1,30 @@
1
+ import * as factory from '../../../factory';
2
+ import type { AccountingReportRepo } from '../../../repo/accountingReport';
3
+ import type { AuthorizePaymentMethodActionRepo } from '../../../repo/action/authorizePaymentMethod';
4
+ import type { AssetTransactionRepo } from '../../../repo/assetTransaction';
5
+ import type { TaskRepo } from '../../../repo/task';
6
+ import type { PlaceOrderRepo } from '../../../repo/transaction/placeOrder';
7
+ interface IProcessVoidPayTransactionRepos {
8
+ action?: never;
9
+ authorizePaymentMethodAction: AuthorizePaymentMethodActionRepo;
10
+ accountingReport: AccountingReportRepo;
11
+ assetTransaction: AssetTransactionRepo;
12
+ task: TaskRepo;
13
+ placeOrder: PlaceOrderRepo;
14
+ }
15
+ /**
16
+ * 決済承認中止
17
+ * apiもしくはタスクから決済承認を取り消す
18
+ */
19
+ declare function processVoidPayTransaction(params: factory.task.IData<factory.taskName.VoidPayTransaction> & {
20
+ project: {
21
+ id: string;
22
+ };
23
+ sameAs?: {
24
+ /**
25
+ * 実行元タスクID
26
+ */
27
+ id: string;
28
+ };
29
+ }): (repos: IProcessVoidPayTransactionRepos) => Promise<void>;
30
+ export { IProcessVoidPayTransactionRepos, processVoidPayTransaction, };
@@ -0,0 +1,125 @@
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.processVoidPayTransaction = processVoidPayTransaction;
27
+ const factory = __importStar(require("../../../factory"));
28
+ const PayTransactionService = __importStar(require("../../assetTransaction/pay"));
29
+ /**
30
+ * 決済承認中止
31
+ * apiもしくはタスクから決済承認を取り消す
32
+ */
33
+ function processVoidPayTransaction(params) {
34
+ return async (repos) => {
35
+ const cancelAction = {
36
+ startTime: new Date(),
37
+ agent: { id: params.project.id, typeOf: factory.organizationType.Project },
38
+ ...(typeof params.sameAs?.id === 'string') ? { sameAs: { id: params.sameAs.id, typeOf: 'Task' } } : undefined
39
+ };
40
+ let transaction;
41
+ // アクションID指定の場合、進行中取引検証(2023-02-24~)
42
+ if (typeof params.id === 'string') {
43
+ transaction = await repos.placeOrder.findPlaceOrderInProgressById({ typeOf: params.purpose.typeOf, id: params.purpose.id }, ['typeOf', 'status']);
44
+ }
45
+ else {
46
+ transaction = await repos.placeOrder.findPlaceOrderById({ typeOf: params.purpose.typeOf, id: params.purpose.id }, ['typeOf', 'status', 'result']);
47
+ }
48
+ // 承認アクションを取得
49
+ let authorizeActions;
50
+ if (typeof params.id === 'string') {
51
+ const authorizeAction = await repos.authorizePaymentMethodAction.findById({ typeOf: factory.actionType.AuthorizeAction, id: params.id });
52
+ // 取引内のアクションかどうか確認
53
+ if (authorizeAction.purpose.typeOf !== transaction.typeOf || authorizeAction.purpose.id !== transaction.id) {
54
+ throw new factory.errors.Argument('Transaction', 'Action not found in the transaction');
55
+ }
56
+ authorizeActions = [authorizeAction];
57
+ }
58
+ else {
59
+ authorizeActions = await repos.authorizePaymentMethodAction.findAuthorizePaymentMethodActionsByPurpose({
60
+ // typeOf: factory.actionType.AuthorizeAction,
61
+ purpose: { typeOf: transaction.typeOf, id: transaction.id },
62
+ // object: { typeOf: { $eq: factory.action.authorize.paymentMethod.any.ResultType.Payment } }
63
+ });
64
+ switch (transaction.status) {
65
+ case factory.transactionStatusType.InProgress:
66
+ throw new factory.errors.NotImplemented(`${transaction.status} not implemented`);
67
+ case factory.transactionStatusType.Confirmed:
68
+ // OrderCancelledを考慮(2023-08-30~)
69
+ const orderCancelled = params.purpose.result?.order?.orderStatus === factory.orderStatus.OrderCancelled;
70
+ if (!orderCancelled) {
71
+ // 取り消すべきアクションに絞る
72
+ authorizeActions = authorizeActions.filter(({ actionStatus }) => actionStatus !== factory.actionStatusType.CompletedActionStatus);
73
+ const actionIdsFromTransactionResult = transaction.result?.authorizeActions?.map(({ id }) => id);
74
+ if (!Array.isArray(actionIdsFromTransactionResult)) {
75
+ throw new factory.errors.Argument('Transaction', `${transaction.id} must have result.authorizeActions`);
76
+ }
77
+ authorizeActions = authorizeActions.filter(({ id }) => !actionIdsFromTransactionResult.includes(id));
78
+ // CreditCardIFでは、事前発行のpaymentMethodIdを承認時に指定するケースがある
79
+ // その場合、paymentMethodIdの重複がありうる
80
+ // exclude paymentMethodId in the order(2025-02-25~)
81
+ let authorizedPaymentMethodIds = [];
82
+ authorizedPaymentMethodIds = authorizeActions.filter(({ id }) => actionIdsFromTransactionResult.includes(id))
83
+ .map(({ object }) => object.paymentMethodId);
84
+ authorizedPaymentMethodIds = [...new Set(authorizedPaymentMethodIds)];
85
+ authorizeActions =
86
+ authorizeActions.filter(({ object }) => !authorizedPaymentMethodIds.includes(object.paymentMethodId));
87
+ }
88
+ break;
89
+ default:
90
+ // no op
91
+ }
92
+ }
93
+ const errors = [];
94
+ for (const action of authorizeActions) {
95
+ // 失敗するケースがあっても、残りが少なくとも処理されるようにエラーハンドリング
96
+ try {
97
+ await repos.authorizePaymentMethodAction.cancelWithVoid({ typeOf: action.typeOf, id: action.id, cancelAction });
98
+ // 取引が存在すれば中止
99
+ const transactionNumber = action.object.paymentMethodId;
100
+ if (typeof transactionNumber === 'string' && transactionNumber.length > 0) {
101
+ const payTransaction = (await repos.assetTransaction.search({
102
+ limit: 1,
103
+ page: 1,
104
+ project: { id: { $eq: action.project.id } },
105
+ typeOf: factory.assetTransactionType.Pay,
106
+ transactionNumber: { $eq: transactionNumber }
107
+ }, ['_id', 'status'])).shift();
108
+ if (payTransaction !== undefined) {
109
+ // ステータス検証(Expiredから実行される可能性がある)
110
+ if (payTransaction.status !== factory.transactionStatusType.Canceled
111
+ && payTransaction.status !== factory.transactionStatusType.Expired) {
112
+ await PayTransactionService.cancel({ transactionNumber })(repos);
113
+ }
114
+ }
115
+ }
116
+ }
117
+ catch (error) {
118
+ errors.push(error);
119
+ }
120
+ }
121
+ if (errors.length > 0) {
122
+ throw errors[0];
123
+ }
124
+ };
125
+ }
@@ -1,7 +1,7 @@
1
1
  import * as factory from '../../../../factory';
2
2
  import type { AuthorizationRepo } from '../../../../repo/authorization';
3
3
  import type { TicketRepo } from '../../../../repo/ticket';
4
- import type { ITransactionInProgress } from '../../../../repo/transaction';
4
+ import type { ITransactionInProgress } from '../../../../repo/transaction/placeOrder';
5
5
  import type { TransactionNumberRepo } from '../../../../repo/transactionNumber';
6
6
  interface IFixTransactionNumberRepos {
7
7
  authorization: AuthorizationRepo;
@@ -17,7 +17,7 @@ type IObjectWithoutDetail = factory.action.authorize.paymentMethod.any.IObjectWi
17
17
  */
18
18
  declare function fixTransactionNumberOnPublishPaymentUrl(params: {
19
19
  object: IObjectWithoutDetail;
20
- transaction: Pick<ITransactionInProgress<factory.transactionType.PlaceOrder>, 'id' | 'project'>;
20
+ transaction: Pick<ITransactionInProgress, 'id' | 'project'>;
21
21
  paymentServiceType: factory.service.paymentService.PaymentServiceType;
22
22
  }): IFixTransactionNumberOperation<{
23
23
  transactionNumber: string;
@@ -0,0 +1,66 @@
1
+ import * as factory from '../../../factory';
2
+ import { Settings } from '../../../settings';
3
+ import type { AcceptedPaymentMethodRepo } from '../../../repo/acceptedPaymentMethod';
4
+ import type { AcceptPayActionRepo } from '../../../repo/action/acceptPay';
5
+ import type { AuthorizeInvoiceActionRepo } from '../../../repo/action/authorizeInvoice';
6
+ import type { AssetTransactionRepo } from '../../../repo/assetTransaction';
7
+ import type { AuthorizationRepo } from '../../../repo/authorization';
8
+ import type { EventRepo } from '../../../repo/event';
9
+ import type { EventSeriesRepo } from '../../../repo/eventSeries';
10
+ import type { OrderNumberRepo } from '../../../repo/orderNumber';
11
+ import type { PaymentServiceRepo } from '../../../repo/paymentService';
12
+ import type { PaymentServiceProviderRepo } from '../../../repo/paymentServiceProvider';
13
+ import type { ProjectRepo } from '../../../repo/project';
14
+ import type { SellerPaymentAcceptedRepo } from '../../../repo/sellerPaymentAccepted';
15
+ import type { TicketRepo } from '../../../repo/ticket';
16
+ import type { PlaceOrderRepo } from '../../../repo/transaction/placeOrder';
17
+ import type { TransactionNumberRepo } from '../../../repo/transactionNumber';
18
+ import * as PayTransactionService from '../../assetTransaction/pay';
19
+ interface IPublishPaymentUrlRepos {
20
+ acceptedPaymentMethod: AcceptedPaymentMethodRepo;
21
+ acceptPayAction: AcceptPayActionRepo;
22
+ authorizeInvoiceAction: AuthorizeInvoiceActionRepo;
23
+ assetTransaction: AssetTransactionRepo;
24
+ authorization: AuthorizationRepo;
25
+ event: EventRepo;
26
+ eventSeries: EventSeriesRepo;
27
+ orderNumber: OrderNumberRepo;
28
+ paymentAccepted: SellerPaymentAcceptedRepo;
29
+ paymentService: PaymentServiceRepo;
30
+ paymentServiceProvider: PaymentServiceProviderRepo;
31
+ project: ProjectRepo;
32
+ ticket: TicketRepo;
33
+ placeOrder: PlaceOrderRepo;
34
+ transactionNumber: TransactionNumberRepo;
35
+ }
36
+ type IPublishPaymentUrlOperation<T> = (repos: IPublishPaymentUrlRepos, settings: Settings) => Promise<T>;
37
+ type IObjectWithoutDetail = factory.action.authorize.paymentMethod.any.IObjectWithoutDetail & {
38
+ ticketToken?: string;
39
+ };
40
+ /**
41
+ * 外部決済ロケーションを発行する
42
+ */
43
+ declare function publishPaymentUrl(params: {
44
+ project: {
45
+ id: string;
46
+ };
47
+ agent: {
48
+ id: string;
49
+ };
50
+ object: Pick<IObjectWithoutDetail, 'amount' | 'creditCard' | 'issuedThrough' | 'method' | 'paymentMethod' | 'referencesOrder'>;
51
+ purpose: factory.action.authorize.paymentMethod.any.IPurpose;
52
+ paymentServiceType: factory.service.paymentService.PaymentServiceType;
53
+ location: factory.action.trade.pay.ILocation;
54
+ sameAs?: {
55
+ /**
56
+ * 実行元タスクID
57
+ */
58
+ id: string;
59
+ };
60
+ /**
61
+ * add identifier for an unique index(2025-02-25~)
62
+ */
63
+ identifier?: string;
64
+ instrument: factory.action.trade.pay.IAcceptedPaymentMethodOfferAsInstrument[];
65
+ }): IPublishPaymentUrlOperation<Pick<PayTransactionService.IPublishPaymentUrlResult, 'paymentMethodId' | 'paymentUrl'>>;
66
+ export { IPublishPaymentUrlRepos, publishPaymentUrl };
@@ -0,0 +1,133 @@
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.publishPaymentUrl = publishPaymentUrl;
27
+ const factory = __importStar(require("../../../factory"));
28
+ // import type { TransactionProcessRepo } from '../../repo/transactionProcess';
29
+ const PayTransactionService = __importStar(require("../../assetTransaction/pay"));
30
+ const issueOrderNumberIfNotExist_1 = require("../../transaction/placeOrder/issueOrderNumberIfNotExist");
31
+ const fixTransactionNumberOnPublishPaymentUrl_1 = require("./publishPaymentUrl/fixTransactionNumberOnPublishPaymentUrl");
32
+ const factory_1 = require("./factory");
33
+ /**
34
+ * 外部決済ロケーションを発行する
35
+ */
36
+ function publishPaymentUrl(params) {
37
+ return async (repos, settings) => {
38
+ const { paymentServiceType, purpose, project } = params;
39
+ if (purpose.typeOf !== factory.transactionType.PlaceOrder) {
40
+ throw new factory.errors.NotImplemented(`purpose.typeOf '${purpose.typeOf} not implemented'`);
41
+ }
42
+ try {
43
+ const transaction = await repos.placeOrder.findPlaceOrderInProgressById({ typeOf: purpose.typeOf, id: purpose.id }, ['expires', 'seller', 'project']);
44
+ if (project.id !== transaction.project.id) {
45
+ throw new factory.errors.NotFound(factory.transactionType.PlaceOrder);
46
+ }
47
+ // issueOrderNumber(2025-03-11~)
48
+ await (0, issueOrderNumberIfNotExist_1.issueOrderNumberIfNotExist)({
49
+ project: { id: transaction.project.id },
50
+ id: transaction.id,
51
+ object: { orderDate: new Date() }
52
+ })(repos);
53
+ // 取引番号生成
54
+ const { transactionNumber, ticketToken } = await (0, fixTransactionNumberOnPublishPaymentUrl_1.fixTransactionNumberOnPublishPaymentUrl)({
55
+ object: params.object,
56
+ transaction,
57
+ paymentServiceType
58
+ })(repos);
59
+ // let transactionNumber: string | undefined;
60
+ // // support ticketToken(2024-08-21~)
61
+ // const { permitOrInvoice } =
62
+ // await verifyTicketTokenAsNeeded({ project, object: params.object, paymentServiceType, purpose })(repos);
63
+ // if (permitOrInvoice?.typeOf === factory.permit.PermitType.Permit) {
64
+ // const paymentMethodIdByPermit = permitOrInvoice?.identifier;
65
+ // if (typeof paymentMethodIdByPermit === 'string') {
66
+ // transactionNumber = paymentMethodIdByPermit;
67
+ // }
68
+ // }
69
+ // if (typeof transactionNumber !== 'string') {
70
+ // const publishTransactionNumberResult = await repos.transactionNumber.publishByTimestamp({ startDate: new Date() });
71
+ // transactionNumber = publishTransactionNumberResult.transactionNumber;
72
+ // }
73
+ // URL発行
74
+ const authorizeObject = {
75
+ ...params.object,
76
+ accountId: '',
77
+ paymentMethodId: transactionNumber,
78
+ typeOf: factory.action.authorize.paymentMethod.any.ResultType.Payment,
79
+ // support referencesOrder(2025-11-24~)
80
+ referencesOrder: (params.object.referencesOrder?.typeOf === factory.order.OrderType.Order)
81
+ ? params.object.referencesOrder
82
+ : { typeOf: factory.order.OrderType.Order }
83
+ };
84
+ const startParams = (0, factory_1.creatPublishPaymentUrlParams)({
85
+ object: authorizeObject,
86
+ paymentServiceType,
87
+ transaction: transaction,
88
+ transactionNumber: transactionNumber,
89
+ location: params.location,
90
+ instrument: params.instrument,
91
+ ...(typeof params.identifier === 'string') ? { identifier: params.identifier } : undefined,
92
+ ...(typeof ticketToken === 'string') ? { ticketToken } : undefined
93
+ });
94
+ const taskId = params.sameAs?.id;
95
+ const result = await PayTransactionService.publishPaymentUrl(startParams, {
96
+ purposeAsTransaction: { id: transaction.id },
97
+ executor: (typeof taskId === 'string') ? { id: taskId } : {} // タスク関連付け(2024-05-22~)
98
+ })(repos, settings);
99
+ // 取引に保管
100
+ const paymentMethodByPaymentUrl = {
101
+ // typeOf: params.object.paymentMethod, // discontinue(2024-06-05~)
102
+ paymentMethodId: result.paymentMethodId
103
+ // paymentUrl: result.paymentUrl, // migrate to recipe(2024-06-05~)
104
+ // issuedThrough: {
105
+ // id: (typeof startParams.object.id === 'string') ? startParams.object.id : ''
106
+ // } // migrate to acceptAction(2024-06-05~)
107
+ // GMO IFを保管(2024-01-01~)
108
+ // entryTranArgs: result.entryTranArgs, // migrate to recipe(2024-06-05~)
109
+ // entryTranResult: result.entryTranResult, // migrate to recipe(2024-06-05~)
110
+ // execTranArgs: result.execTranArgs, // migrate to recipe(2024-06-05~)
111
+ // execTranResult: result.execTranResult, // migrate to recipe(2024-06-05~)
112
+ // paymentMethod: startParams.object.paymentMethod // 拡張(2024-01-04~) // migrate to acceptAction(2024-06-05~)
113
+ };
114
+ await repos.placeOrder.findByIdAndUpdateInProgress({
115
+ id: transaction.id,
116
+ update: { $set: { 'object.paymentMethods': paymentMethodByPaymentUrl } }
117
+ });
118
+ return {
119
+ paymentMethodId: result.paymentMethodId,
120
+ paymentUrl: result.paymentUrl
121
+ };
122
+ }
123
+ catch (error) {
124
+ // 複数対応(2024-03-27~)
125
+ if (Array.isArray(error)) {
126
+ throw error[0];
127
+ }
128
+ else {
129
+ throw error;
130
+ }
131
+ }
132
+ };
133
+ }
@@ -0,0 +1,34 @@
1
+ import * as factory from '../../../factory';
2
+ import type { AccountingReportRepo } from '../../../repo/accountingReport';
3
+ import type { AcceptPayActionRepo } from '../../../repo/action/acceptPay';
4
+ import type { AuthorizePaymentMethodActionRepo } from '../../../repo/action/authorizePaymentMethod';
5
+ import type { AssetTransactionRepo } from '../../../repo/assetTransaction';
6
+ import type { PaymentServiceRepo } from '../../../repo/paymentService';
7
+ import type { PaymentServiceProviderRepo } from '../../../repo/paymentServiceProvider';
8
+ import type { SellerPaymentAcceptedRepo } from '../../../repo/sellerPaymentAccepted';
9
+ import type { TaskRepo } from '../../../repo/task';
10
+ import type { PlaceOrderRepo } from '../../../repo/transaction/placeOrder';
11
+ /**
12
+ * 決済承認中止
13
+ * タスクから決済承認を取り消す
14
+ */
15
+ declare function voidPayTransaction(params: factory.task.IData<factory.taskName.VoidPayTransaction> & {
16
+ project: {
17
+ id: string;
18
+ };
19
+ sameAs?: {
20
+ id: string;
21
+ };
22
+ }): (repos: {
23
+ accountingReport: AccountingReportRepo;
24
+ action?: never;
25
+ acceptPayAction: AcceptPayActionRepo;
26
+ authorizePaymentMethodAction: AuthorizePaymentMethodActionRepo;
27
+ assetTransaction: AssetTransactionRepo;
28
+ paymentAccepted: SellerPaymentAcceptedRepo;
29
+ paymentService: PaymentServiceRepo;
30
+ paymentServiceProvider: PaymentServiceProviderRepo;
31
+ task: TaskRepo;
32
+ placeOrder: PlaceOrderRepo;
33
+ }) => Promise<void>;
34
+ export { voidPayTransaction, };