@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
@@ -23,36 +23,44 @@ var __importStar = (this && this.__importStar) || function (mod) {
23
23
  return result;
24
24
  };
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.publishOrderNumberIfNotExist = publishOrderNumberIfNotExist;
26
+ exports.issueOrderNumberIfNotExist = issueOrderNumberIfNotExist;
27
27
  const factory = __importStar(require("../../../factory"));
28
28
  /**
29
29
  * 未発行であれば、注文番号を発行して取引に保管する
30
30
  */
31
- function publishOrderNumberIfNotExist(params) {
31
+ function issueOrderNumberIfNotExist(params) {
32
32
  return async (repos) => {
33
- // 最適化(2023-02-03~)
34
- let orderNumber = await repos.transaction.findInProgressOrderNumberById({ id: params.id });
33
+ // 1. 最初のチェック
34
+ let orderNumber = await repos.placeOrder.findInProgressOrderNumberById({ id: params.id });
35
35
  // すでに発行済であれば何もしない
36
36
  if (typeof orderNumber === 'string') {
37
37
  return orderNumber;
38
38
  }
39
- // 注文番号を発行
39
+ // 2. 発行準備
40
40
  const { alternateName } = await repos.project.findAlternateNameById({ id: params.project.id });
41
41
  if (typeof alternateName !== 'string') {
42
42
  throw new factory.errors.NotFound('project.alternateName');
43
43
  }
44
- orderNumber = await repos.orderNumber.publishByTimestamp({
44
+ // 3. 番号発行
45
+ const issuedOrderNumber = await repos.orderNumber.issueOrderNumber({
45
46
  project: { alternateName },
46
47
  orderDate: params.object.orderDate
47
48
  });
48
- // 取引に存在しなければ保管
49
- await repos.transaction.saveOrderNumberIfNotExist({ id: params.id, orderNumber });
50
- // 注文番号を取引から再取得
51
- // 最適化(2023-02-03~)
52
- orderNumber = await repos.transaction.findInProgressOrderNumberById({ id: params.id });
53
- // 万が一処理が想定通りでない場合orderNumberが存在しない
49
+ // 4. 保管を試みる
50
+ const { modifiedCount } = await repos.placeOrder.saveOrderNumberIfNotExist({
51
+ id: params.id,
52
+ orderNumber: issuedOrderNumber
53
+ });
54
+ // 5. 書き込めたなら、自分が発行した番号が「真実」
55
+ if (modifiedCount === 1) {
56
+ return issuedOrderNumber;
57
+ }
58
+ // 6. 競合が発生した場合(他者が先に書き込んだ場合)
59
+ // DBにある「正解」を再取得して返す
60
+ orderNumber = await repos.placeOrder.findInProgressOrderNumberById({ id: params.id });
54
61
  if (typeof orderNumber !== 'string') {
55
- throw new factory.errors.Internal('transaction.object.orderNumber not found');
62
+ // ここを通るのは、他者が保存した直後に取引がキャンセル/削除された等の極めて稀なケース
63
+ throw new factory.errors.Internal('OrderNumber conflict: failed to retrieve existing number');
56
64
  }
57
65
  return orderNumber;
58
66
  };
@@ -1,5 +1,5 @@
1
1
  import type { ConfirmationNumberRepo } from '../../../repo/confirmationNumber';
2
- import type { TransactionRepo } from '../../../repo/transaction';
2
+ import type { PlaceOrderRepo } from '../../../repo/transaction/placeOrder';
3
3
  import * as factory from '../../../factory';
4
4
  /**
5
5
  * 未発行であれば、注文の確認番号を発行して取引に保管する
@@ -16,7 +16,7 @@ declare function publishConfirmationNumberIfNotExist(params: {
16
16
  orderDate: Date;
17
17
  };
18
18
  }): (repos: {
19
- transaction: TransactionRepo;
19
+ placeOrder: PlaceOrderRepo;
20
20
  confirmationNumber: ConfirmationNumberRepo;
21
21
  }) => Promise<string>;
22
22
  export { publishConfirmationNumberIfNotExist };
@@ -30,7 +30,7 @@ const factory = __importStar(require("../../../factory"));
30
30
  */
31
31
  function publishConfirmationNumberIfNotExist(params) {
32
32
  return async (repos) => {
33
- let confirmationNumber = await repos.transaction.findInProgressConfirmationNumberById({
33
+ let confirmationNumber = await repos.placeOrder.findInProgressConfirmationNumberById({
34
34
  id: params.id,
35
35
  status: { $in: params.status.$in }
36
36
  });
@@ -41,13 +41,13 @@ function publishConfirmationNumberIfNotExist(params) {
41
41
  // 確認番号を発行
42
42
  confirmationNumber = await repos.confirmationNumber.publish({ orderDate: params.object.orderDate });
43
43
  // 取引に存在しなければ保管
44
- await repos.transaction.saveConfirmationNumberIfNotExist({
44
+ await repos.placeOrder.saveConfirmationNumberIfNotExist({
45
45
  id: params.id,
46
46
  status: { $in: params.status.$in },
47
47
  confirmationNumber
48
48
  });
49
49
  // 確認番号を取引から再取得
50
- confirmationNumber = await repos.transaction.findInProgressConfirmationNumberById({
50
+ confirmationNumber = await repos.placeOrder.findInProgressConfirmationNumberById({
51
51
  id: params.id,
52
52
  status: { $in: params.status.$in }
53
53
  });
@@ -4,7 +4,7 @@ import type { MemberProgramRepo } from '../../../repo/memberProgram';
4
4
  import type { PassportRepo } from '../../../repo/passport';
5
5
  import type { ProjectMakesOfferRepo } from '../../../repo/projectMakesOffer';
6
6
  import type { SellerRepo } from '../../../repo/seller';
7
- import type { IStartedTransaction, TransactionRepo } from '../../../repo/transaction';
7
+ import type { IStartedPlaceOrder, PlaceOrderRepo } from '../../../repo/transaction/placeOrder';
8
8
  import { placeOrder as PlaceOrderFactory } from '../../../factory/transaction';
9
9
  interface IStartOperationRepos {
10
10
  issuer: IssuerRepo;
@@ -13,7 +13,7 @@ interface IStartOperationRepos {
13
13
  passport: PassportRepo;
14
14
  projectMakesOffer: ProjectMakesOfferRepo;
15
15
  seller: SellerRepo;
16
- transaction: TransactionRepo;
16
+ placeOrder: PlaceOrderRepo;
17
17
  }
18
18
  type IStartOperation<T> = (repos: IStartOperationRepos) => Promise<T>;
19
19
  type IStartParams = PlaceOrderFactory.IStartParams;
@@ -23,5 +23,5 @@ interface IStartOptions {
23
23
  /**
24
24
  * 取引開始
25
25
  */
26
- declare function start(params: IStartParams, options: IStartOptions): IStartOperation<IStartedTransaction>;
26
+ declare function start(params: IStartParams, options: IStartOptions): IStartOperation<IStartedPlaceOrder>;
27
27
  export { start };
@@ -54,7 +54,7 @@ function start(params, options) {
54
54
  }
55
55
  catch (error) {
56
56
  // in case already locked
57
- const alreadyStartedTransaction = (await repos.transaction.projectFields({
57
+ const alreadyStartedTransaction = (await repos.placeOrder.findPlaceOrderTransactions({
58
58
  limit: 1, page: 1,
59
59
  typeOf: factory.transactionType.PlaceOrder,
60
60
  project: { id: { $eq: startParams.project.id } },
@@ -72,7 +72,7 @@ function start(params, options) {
72
72
  }
73
73
  }
74
74
  if (transaction === undefined) {
75
- transaction = await repos.transaction.start(startParams);
75
+ transaction = await repos.placeOrder.startPlaceOrder(startParams);
76
76
  }
77
77
  return transaction;
78
78
  };
@@ -0,0 +1,23 @@
1
+ import * as factory from '../../../factory';
2
+ import type { OrderInTransactionRepo } from '../../../repo/orderInTransaction';
3
+ import type { OrderNumberRepo } from '../../../repo/orderNumber';
4
+ import type { ProjectRepo } from '../../../repo/project';
5
+ import type { PlaceOrderRepo } from '../../../repo/transaction/placeOrder';
6
+ /**
7
+ * 取引人プロフィール更新
8
+ */
9
+ export declare function updateAgent(params: {
10
+ typeOf: factory.transactionType.PlaceOrder;
11
+ /**
12
+ * 取引ID
13
+ */
14
+ id: string;
15
+ agent: factory.order.ICustomer & {
16
+ telephoneRegion?: string;
17
+ };
18
+ }): (repos: {
19
+ orderInTransaction: OrderInTransactionRepo;
20
+ orderNumber: OrderNumberRepo;
21
+ project: ProjectRepo;
22
+ placeOrder: PlaceOrderRepo;
23
+ }) => Promise<void>;
@@ -0,0 +1,126 @@
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.updateAgent = updateAgent;
27
+ const google_libphonenumber_1 = require("google-libphonenumber");
28
+ const factory = __importStar(require("../../../factory"));
29
+ const issueOrderNumberIfNotExist_1 = require("./issueOrderNumberIfNotExist");
30
+ // import { Settings } from '../settings';
31
+ // export type ITransactionOperation<T> = (repos: { transaction: TransactionRepo }) => Promise<T>;
32
+ function fixCustomer(params) {
33
+ return async (repos) => {
34
+ let formattedTelephone;
35
+ try {
36
+ const phoneUtil = google_libphonenumber_1.PhoneNumberUtil.getInstance();
37
+ const phoneNumber = phoneUtil.parse(params.agent.telephone, params.agent.telephoneRegion);
38
+ if (!phoneUtil.isValidNumber(phoneNumber)) {
39
+ throw new factory.errors.Argument('telephone', 'Invalid phone number');
40
+ }
41
+ formattedTelephone = phoneUtil.format(phoneNumber, google_libphonenumber_1.PhoneNumberFormat.E164);
42
+ }
43
+ catch (error) {
44
+ throw new factory.errors.Argument('telephone', error.message);
45
+ }
46
+ const transaction = await repos.placeOrder.findPlaceOrderInProgressById({
47
+ typeOf: params.typeOf,
48
+ id: params.id
49
+ }, ['agent', 'object', 'typeOf', 'project']);
50
+ if (transaction.agent.id !== params.agent.id) {
51
+ throw new factory.errors.Forbidden('Transaction not yours');
52
+ }
53
+ // 注文取引の場合、object.customerにも適用
54
+ let customer;
55
+ if (transaction.typeOf === factory.transactionType.PlaceOrder) {
56
+ // いったんtransaction.object.customer?.typeOfは取引開始時にセットされている前提
57
+ const trasactionObject = transaction.object;
58
+ if (typeof trasactionObject.customer?.typeOf === 'string') {
59
+ customer = {
60
+ typeOf: trasactionObject.customer.typeOf,
61
+ id: trasactionObject.customer.id,
62
+ ...(Array.isArray(trasactionObject.customer.identifier))
63
+ ? { identifier: trasactionObject.customer.identifier }
64
+ : /* istanbul ignore next */ undefined,
65
+ // discontinue(2024-05-16~)
66
+ // ...(transaction.object.customer.typeOf === factory.personType.Person
67
+ // && typeof transaction.object.customer.memberOf?.typeOf === 'string')
68
+ // ? { memberOf: transaction.object.customer.memberOf }
69
+ // : undefined,
70
+ ...(Array.isArray(params.agent.additionalProperty))
71
+ ? { additionalProperty: params.agent.additionalProperty }
72
+ : /* istanbul ignore next */ undefined,
73
+ ...(typeof params.agent.age === 'string') ? { age: params.agent.age }
74
+ : /* istanbul ignore next */ undefined,
75
+ ...(typeof params.agent.address === 'string') ? { address: params.agent.address }
76
+ : /* istanbul ignore next */ undefined,
77
+ ...(typeof params.agent.email === 'string') ? { email: params.agent.email }
78
+ : /* istanbul ignore next */ undefined,
79
+ ...(typeof params.agent.familyName === 'string') ? { familyName: params.agent.familyName }
80
+ : /* istanbul ignore next */ undefined,
81
+ ...(typeof params.agent.gender === 'string') ? { gender: params.agent.gender }
82
+ : /* istanbul ignore next */ undefined,
83
+ ...(typeof params.agent.givenName === 'string') ? { givenName: params.agent.givenName }
84
+ : /* istanbul ignore next */ undefined,
85
+ ...(typeof params.agent.name === 'string') ? { name: params.agent.name } : /* istanbul ignore next */ undefined,
86
+ ...(typeof formattedTelephone === 'string') ? { telephone: formattedTelephone } : /* istanbul ignore next */ undefined,
87
+ ...(typeof params.agent.url === 'string') ? { url: params.agent.url } : /* istanbul ignore next */ undefined
88
+ };
89
+ }
90
+ }
91
+ return { customer, transaction };
92
+ };
93
+ }
94
+ /**
95
+ * 取引人プロフィール更新
96
+ */
97
+ function updateAgent(params) {
98
+ return async (repos) => {
99
+ const { customer, transaction } = await fixCustomer(params)(repos);
100
+ // also save in orderInTransaction(2024-06-20~)
101
+ if (customer !== undefined) {
102
+ const orderNumber = await (0, issueOrderNumberIfNotExist_1.issueOrderNumberIfNotExist)({
103
+ project: { id: transaction.project.id },
104
+ id: params.id,
105
+ object: { orderDate: new Date() }
106
+ })(repos);
107
+ const customerName = (typeof customer.name === 'string' && customer.name !== '')
108
+ ? customer.name
109
+ : (typeof customer.givenName === 'string' && typeof customer.familyName === 'string'
110
+ && customer.givenName !== '' && customer.familyName !== '')
111
+ ? `${customer.givenName} ${customer.familyName}`
112
+ : undefined;
113
+ const customerInOrder = {
114
+ ...customer,
115
+ identifier: (Array.isArray(customer.identifier)) ? customer.identifier : [],
116
+ ...(typeof customerName === 'string') ? { name: customerName } : undefined
117
+ };
118
+ await repos.orderInTransaction.setCustomer({
119
+ orderNumber,
120
+ project: transaction.project,
121
+ customer: customerInOrder
122
+ });
123
+ }
124
+ // return newAgent;
125
+ };
126
+ }
@@ -5,4 +5,5 @@ import { POINT_AWARD_IDENTIFIER_NAME } from '../../factory/order';
5
5
  import { confirm } from './placeOrder/confirm';
6
6
  import { exportTasksById } from './placeOrder/exportTasksById';
7
7
  import { start } from './placeOrder/start';
8
- export { confirm, POINT_AWARD_IDENTIFIER_NAME, start, exportTasksById };
8
+ import { updateAgent } from './placeOrder/updateAgent';
9
+ export { confirm, POINT_AWARD_IDENTIFIER_NAME, start, exportTasksById, updateAgent };
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.exportTasksById = exports.start = exports.POINT_AWARD_IDENTIFIER_NAME = exports.confirm = void 0;
3
+ exports.updateAgent = exports.exportTasksById = exports.start = exports.POINT_AWARD_IDENTIFIER_NAME = exports.confirm = void 0;
4
4
  /**
5
5
  * 注文取引サービス
6
6
  */
@@ -12,3 +12,5 @@ const exportTasksById_1 = require("./placeOrder/exportTasksById");
12
12
  Object.defineProperty(exports, "exportTasksById", { enumerable: true, get: function () { return exportTasksById_1.exportTasksById; } });
13
13
  const start_1 = require("./placeOrder/start");
14
14
  Object.defineProperty(exports, "start", { enumerable: true, get: function () { return start_1.start; } });
15
+ const updateAgent_1 = require("./placeOrder/updateAgent");
16
+ Object.defineProperty(exports, "updateAgent", { enumerable: true, get: function () { return updateAgent_1.updateAgent; } });
@@ -31,4 +31,4 @@ declare function preStart(params: factory.transaction.returnOrder.IStartParamsWi
31
31
  seller: IFixedSeller;
32
32
  expiresInSeconds: number;
33
33
  }>;
34
- export { preStart };
34
+ export { IPreStartOperationRepos, preStart };
@@ -13,7 +13,7 @@ import type { SellerRepo } from '../../repo/seller';
13
13
  import type { SellerReturnPolicyRepo } from '../../repo/sellerReturnPolicy';
14
14
  import type { SettingRepo } from '../../repo/setting';
15
15
  import type { TaskRepo } from '../../repo/task';
16
- import type { IStartedTransaction, TransactionRepo } from '../../repo/transaction';
16
+ import type { IStartedTransaction, ReturnOrderRepo } from '../../repo/transaction/returnOrder';
17
17
  import { preStart } from './returnOrder/preStart';
18
18
  interface IStartOperationRepos {
19
19
  acceptedOffer: AcceptedOfferRepo;
@@ -26,18 +26,27 @@ interface IStartOperationRepos {
26
26
  reservation: ReservationRepo;
27
27
  seller: SellerRepo;
28
28
  sellerReturnPolicy: SellerReturnPolicyRepo;
29
- transaction: TransactionRepo;
29
+ returnOrder: ReturnOrderRepo;
30
30
  }
31
31
  type IStartOperation<T> = (repos: IStartOperationRepos) => Promise<T>;
32
- type ITaskAndTransactionOperation<T> = (repos: {
32
+ interface IExportTasksByIdRepos {
33
33
  setting: SettingRepo;
34
34
  task: TaskRepo;
35
- transaction: TransactionRepo;
36
- }) => Promise<T>;
35
+ returnOrder: ReturnOrderRepo;
36
+ }
37
+ type ITaskAndTransactionOperation<T> = (repos: IExportTasksByIdRepos) => Promise<T>;
37
38
  /**
38
39
  * 返品取引開始
39
40
  */
40
41
  declare function start(params: factory.transaction.returnOrder.IStartParamsWithoutDetail): IStartOperation<IStartedTransaction>;
42
+ interface IConfirmRepos {
43
+ acceptedOffer: AcceptedOfferRepo;
44
+ emailMessage?: EmailMessageRepo;
45
+ message: MessageRepo;
46
+ order: OrderRepo;
47
+ setting: SettingRepo;
48
+ returnOrder: ReturnOrderRepo;
49
+ }
41
50
  /**
42
51
  * 取引確定
43
52
  */
@@ -47,14 +56,7 @@ declare function confirm(params: factory.transaction.returnOrder.IConfirmParams
47
56
  dateReturned: Date;
48
57
  };
49
58
  };
50
- }): (repos: {
51
- acceptedOffer: AcceptedOfferRepo;
52
- emailMessage?: EmailMessageRepo;
53
- message: MessageRepo;
54
- order: OrderRepo;
55
- setting: SettingRepo;
56
- transaction: TransactionRepo;
57
- }) => Promise<import("@chevre/factory/lib/transaction/returnOrder").IResult | undefined>;
59
+ }): (repos: IConfirmRepos) => Promise<import("@chevre/factory/lib/transaction/returnOrder").IResult | undefined>;
58
60
  /**
59
61
  * 取引のタスクを出力します
60
62
  * 複数タスクが生成されます
@@ -67,4 +69,4 @@ declare function exportTasksById(params: {
67
69
  */
68
70
  runsTasksAfterInSeconds?: number;
69
71
  }): ITaskAndTransactionOperation<void>;
70
- export { preStart, start, confirm, exportTasksById };
72
+ export { IStartOperationRepos, IConfirmRepos, IExportTasksByIdRepos, preStart, start, confirm, exportTasksById };
@@ -60,7 +60,7 @@ function start(params) {
60
60
  };
61
61
  let returnOrderTransaction;
62
62
  try {
63
- returnOrderTransaction = await repos.transaction.start(returnOrderAttributes);
63
+ returnOrderTransaction = await repos.returnOrder.startReturnOrder(returnOrderAttributes);
64
64
  }
65
65
  catch (error) {
66
66
  if (await (0, errorHandler_1.isMongoError)(error)) {
@@ -108,7 +108,7 @@ function confirm(params) {
108
108
  return async (repos
109
109
  // settings: Settings
110
110
  ) => {
111
- const transaction = await repos.transaction.projectFieldsById({ typeOf: factory.transactionType.ReturnOrder, id: params.id }, ['typeOf', 'status', 'project', 'agent', 'object', 'result']);
111
+ const transaction = await repos.returnOrder.findReturnOrderById({ typeOf: factory.transactionType.ReturnOrder, id: params.id }, ['typeOf', 'status', 'project', 'agent', 'object', 'result']);
112
112
  if (transaction.status === factory.transactionStatusType.Confirmed) {
113
113
  // すでに確定済の場合
114
114
  return transaction.result;
@@ -169,7 +169,7 @@ function confirm(params) {
169
169
  order: { orderNumber: returningOrders[0].orderNumber }, seller: { id: returningOrders[0].seller.id }, emailMessages
170
170
  })(repos);
171
171
  // ステータス変更
172
- await repos.transaction.confirm({
172
+ await repos.returnOrder.confirmReturnOrder({
173
173
  typeOf: transaction.typeOf,
174
174
  id: transaction.id,
175
175
  result, potentialActions
@@ -186,7 +186,7 @@ function exportTasksById(params) {
186
186
  return async (repos
187
187
  // settings: Settings
188
188
  ) => {
189
- const transaction = await repos.transaction.projectFieldsById({ typeOf: factory.transactionType.ReturnOrder, id: params.id }, ['typeOf', 'status', 'project', 'endDate', 'startDate', 'object', 'potentialActions']);
189
+ const transaction = await repos.returnOrder.findReturnOrderById({ typeOf: factory.transactionType.ReturnOrder, id: params.id }, ['typeOf', 'status', 'project', 'endDate', 'startDate', 'object', 'potentialActions']);
190
190
  // タスク実行日時バッファの指定があれば調整
191
191
  let taskRunsAt = new Date();
192
192
  if (typeof params.runsTasksAfterInSeconds === 'number') {
@@ -1,42 +1,26 @@
1
+ /**
2
+ * 取引サービス
3
+ */
1
4
  import * as factory from '../factory';
2
- import type { OrderInTransactionRepo } from '../repo/orderInTransaction';
3
- import type { OrderNumberRepo } from '../repo/orderNumber';
4
- import type { ProjectRepo } from '../repo/project';
5
5
  import type { SettingRepo } from '../repo/setting';
6
6
  import type { TaskRepo } from '../repo/task';
7
7
  import type { TransactionRepo } from '../repo/transaction';
8
+ import type { PlaceOrderRepo } from '../repo/transaction/placeOrder';
9
+ import type { ReturnOrderRepo } from '../repo/transaction/returnOrder';
8
10
  import { deleteTransaction } from './transaction/deleteTransaction';
9
- import * as MoneyTransferTransactionService from './transaction/moneyTransfer';
10
11
  import * as PlaceOrderTransactionService from './transaction/placeOrder';
11
12
  import * as ReturnOrderTransactionService from './transaction/returnOrder';
12
13
  export type ITransactionOperation<T> = (repos: {
13
14
  transaction: TransactionRepo;
14
15
  }) => Promise<T>;
15
- export import moneyTransfer = MoneyTransferTransactionService;
16
16
  export import placeOrder = PlaceOrderTransactionService;
17
17
  export import returnOrder = ReturnOrderTransactionService;
18
18
  export { deleteTransaction };
19
- /**
20
- * 取引人プロフィール更新
21
- */
22
- export declare function updateAgent(params: {
23
- typeOf: factory.transactionType;
24
- /**
25
- * 取引ID
26
- */
27
- id: string;
28
- agent: factory.order.ICustomer & {
29
- telephoneRegion?: string;
30
- };
31
- }): (repos: {
32
- orderInTransaction: OrderInTransactionRepo;
33
- orderNumber: OrderNumberRepo;
34
- project: ProjectRepo;
35
- transaction: TransactionRepo;
36
- }) => Promise<void>;
37
19
  export type IExportTasksOperation<T> = (repos: {
38
20
  setting: SettingRepo;
39
21
  task: TaskRepo;
22
+ placeOrder: PlaceOrderRepo;
23
+ returnOrder: ReturnOrderRepo;
40
24
  transaction: TransactionRepo;
41
25
  }) => Promise<T>;
42
26
  export declare function exportOneTransactionTasksIfExists(params: {
@@ -64,4 +48,4 @@ export declare function exportOneTransactionTasksIfExists(params: {
64
48
  endDate?: factory.sortType;
65
49
  startDate?: factory.sortType;
66
50
  };
67
- }): IExportTasksOperation<Pick<factory.transaction.ITransaction<factory.transactionType>, 'id' | 'typeOf'> | void>;
51
+ }): IExportTasksOperation<Pick<factory.transaction.ITransaction<factory.transactionType>, 'id' | 'typeOf'> | undefined>;
@@ -1,4 +1,8 @@
1
1
  "use strict";
2
+ /**
3
+ * 取引サービス
4
+ */
5
+ // import { PhoneNumberFormat, PhoneNumberUtil } from 'google-libphonenumber';
2
6
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
7
  if (k2 === undefined) k2 = k;
4
8
  var desc = Object.getOwnPropertyDescriptor(m, k);
@@ -23,128 +27,16 @@ var __importStar = (this && this.__importStar) || function (mod) {
23
27
  return result;
24
28
  };
25
29
  Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.deleteTransaction = exports.returnOrder = exports.placeOrder = exports.moneyTransfer = void 0;
27
- exports.updateAgent = updateAgent;
30
+ exports.deleteTransaction = exports.returnOrder = exports.placeOrder = void 0;
28
31
  exports.exportOneTransactionTasksIfExists = exportOneTransactionTasksIfExists;
29
- /**
30
- * 取引サービス
31
- */
32
- const google_libphonenumber_1 = require("google-libphonenumber");
33
32
  const factory = __importStar(require("../factory"));
34
33
  const deleteTransaction_1 = require("./transaction/deleteTransaction");
35
34
  Object.defineProperty(exports, "deleteTransaction", { enumerable: true, get: function () { return deleteTransaction_1.deleteTransaction; } });
36
- const MoneyTransferTransactionService = __importStar(require("./transaction/moneyTransfer"));
37
35
  const PlaceOrderTransactionService = __importStar(require("./transaction/placeOrder"));
38
- const publishOrderNumberIfNotExist_1 = require("./transaction/placeOrder/publishOrderNumberIfNotExist");
36
+ // import { issueOrderNumberIfNotExist } from './transaction/placeOrder/issueOrderNumberIfNotExist';
39
37
  const ReturnOrderTransactionService = __importStar(require("./transaction/returnOrder"));
40
- exports.moneyTransfer = MoneyTransferTransactionService;
41
38
  exports.placeOrder = PlaceOrderTransactionService;
42
39
  exports.returnOrder = ReturnOrderTransactionService;
43
- function fixCustomer(params) {
44
- return async (repos) => {
45
- let formattedTelephone;
46
- try {
47
- const phoneUtil = google_libphonenumber_1.PhoneNumberUtil.getInstance();
48
- const phoneNumber = phoneUtil.parse(params.agent.telephone, params.agent.telephoneRegion);
49
- if (!phoneUtil.isValidNumber(phoneNumber)) {
50
- throw new factory.errors.Argument('telephone', 'Invalid phone number');
51
- }
52
- formattedTelephone = phoneUtil.format(phoneNumber, google_libphonenumber_1.PhoneNumberFormat.E164);
53
- }
54
- catch (error) {
55
- throw new factory.errors.Argument('telephone', error.message);
56
- }
57
- const transaction = await repos.transaction.projectFieldsInProgressById({
58
- typeOf: params.typeOf,
59
- id: params.id
60
- }, ['agent', 'object', 'typeOf', 'project']);
61
- if (transaction.agent.id !== params.agent.id) {
62
- throw new factory.errors.Forbidden('Transaction not yours');
63
- }
64
- // 注文取引の場合、object.customerにも適用
65
- let customer;
66
- if (transaction.typeOf === factory.transactionType.PlaceOrder) {
67
- // いったんtransaction.object.customer?.typeOfは取引開始時にセットされている前提
68
- const trasactionObject = transaction.object;
69
- if (typeof trasactionObject.customer?.typeOf === 'string') {
70
- customer = {
71
- typeOf: trasactionObject.customer.typeOf,
72
- id: trasactionObject.customer.id,
73
- ...(Array.isArray(trasactionObject.customer.identifier))
74
- ? { identifier: trasactionObject.customer.identifier }
75
- : /* istanbul ignore next */ undefined,
76
- // discontinue(2024-05-16~)
77
- // ...(transaction.object.customer.typeOf === factory.personType.Person
78
- // && typeof transaction.object.customer.memberOf?.typeOf === 'string')
79
- // ? { memberOf: transaction.object.customer.memberOf }
80
- // : undefined,
81
- ...(Array.isArray(params.agent.additionalProperty))
82
- ? { additionalProperty: params.agent.additionalProperty }
83
- : /* istanbul ignore next */ undefined,
84
- ...(typeof params.agent.age === 'string') ? { age: params.agent.age }
85
- : /* istanbul ignore next */ undefined,
86
- ...(typeof params.agent.address === 'string') ? { address: params.agent.address }
87
- : /* istanbul ignore next */ undefined,
88
- ...(typeof params.agent.email === 'string') ? { email: params.agent.email }
89
- : /* istanbul ignore next */ undefined,
90
- ...(typeof params.agent.familyName === 'string') ? { familyName: params.agent.familyName }
91
- : /* istanbul ignore next */ undefined,
92
- ...(typeof params.agent.gender === 'string') ? { gender: params.agent.gender }
93
- : /* istanbul ignore next */ undefined,
94
- ...(typeof params.agent.givenName === 'string') ? { givenName: params.agent.givenName }
95
- : /* istanbul ignore next */ undefined,
96
- ...(typeof params.agent.name === 'string') ? { name: params.agent.name } : /* istanbul ignore next */ undefined,
97
- ...(typeof formattedTelephone === 'string') ? { telephone: formattedTelephone } : /* istanbul ignore next */ undefined,
98
- ...(typeof params.agent.url === 'string') ? { url: params.agent.url } : /* istanbul ignore next */ undefined
99
- };
100
- }
101
- }
102
- return { customer, transaction };
103
- };
104
- }
105
- /**
106
- * 取引人プロフィール更新
107
- */
108
- function updateAgent(params) {
109
- return async (repos) => {
110
- const { customer, transaction } = await fixCustomer(params)(repos);
111
- // const newAgent: Pick<factory.transaction.placeOrder.IAgent, 'id'> = {
112
- // id: transaction.agent.id
113
- // };
114
- // discontinue saving in transaction(2024-06-24~)
115
- // await repos.transaction.updateAgent({
116
- // typeOf: params.typeOf,
117
- // id: params.id,
118
- // agent: newAgent,
119
- // ...(customer !== undefined) ? { object: { customer } } : undefined
120
- // });
121
- // also save in orderInTransaction(2024-06-20~)
122
- if (customer !== undefined) {
123
- const orderNumber = await (0, publishOrderNumberIfNotExist_1.publishOrderNumberIfNotExist)({
124
- project: { id: transaction.project.id },
125
- id: params.id,
126
- object: { orderDate: new Date() }
127
- })(repos);
128
- const customerName = (typeof customer.name === 'string' && customer.name !== '')
129
- ? customer.name
130
- : (typeof customer.givenName === 'string' && typeof customer.familyName === 'string'
131
- && customer.givenName !== '' && customer.familyName !== '')
132
- ? `${customer.givenName} ${customer.familyName}`
133
- : undefined;
134
- const customerInOrder = {
135
- ...customer,
136
- identifier: (Array.isArray(customer.identifier)) ? customer.identifier : [],
137
- ...(typeof customerName === 'string') ? { name: customerName } : undefined
138
- };
139
- await repos.orderInTransaction.setCustomer({
140
- orderNumber,
141
- project: transaction.project,
142
- customer: customerInOrder
143
- });
144
- }
145
- // return newAgent;
146
- };
147
- }
148
40
  function exportOneTransactionTasksIfExists(params) {
149
41
  return async (repos) => {
150
42
  const transaction = await repos.transaction.startExportTasks({
@@ -162,14 +54,6 @@ function exportOneTransactionTasksIfExists(params) {
162
54
  }
163
55
  // 失敗してもここでは戻さない(RUNNINGのまま待機)
164
56
  switch (transaction.typeOf) {
165
- case factory.transactionType.MoneyTransfer:
166
- await MoneyTransferTransactionService.exportTasksById({
167
- id: transaction.id,
168
- ...(typeof params.runsTasksAfterInSeconds === 'number')
169
- ? { runsTasksAfterInSeconds: params.runsTasksAfterInSeconds }
170
- : undefined
171
- })(repos);
172
- break;
173
57
  case factory.transactionType.PlaceOrder:
174
58
  await PlaceOrderTransactionService.exportTasksById({
175
59
  id: transaction.id,