@chevre/domain 23.2.0-alpha.61 → 23.2.0-alpha.63

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 (481) hide show
  1. package/lib/chevre/credentials/customSearch.js +2 -0
  2. package/lib/chevre/credentials/lineNotify.js +4 -0
  3. package/lib/chevre/credentials/sendGrid.js +2 -0
  4. package/lib/chevre/credentials.js +15 -30
  5. package/lib/chevre/emailMessageBuilder.js +225 -250
  6. package/lib/chevre/errorHandler.js +38 -59
  7. package/lib/chevre/eventEmitter/assetTransaction.js +0 -1
  8. package/lib/chevre/eventEmitter/task.js +0 -1
  9. package/lib/chevre/eventEmitter/transaction.js +0 -1
  10. package/lib/chevre/factory/event.js +69 -42
  11. package/lib/chevre/factory/transactionNumber.js +2 -2
  12. package/lib/chevre/index.js +15 -30
  13. package/lib/chevre/repo/acceptedOffer.js +177 -197
  14. package/lib/chevre/repo/acceptedPaymentMethod.js +131 -144
  15. package/lib/chevre/repo/account.js +194 -238
  16. package/lib/chevre/repo/accountTitle.js +9 -21
  17. package/lib/chevre/repo/accountTransaction.js +186 -193
  18. package/lib/chevre/repo/accountingReport.js +88 -107
  19. package/lib/chevre/repo/action.js +849 -883
  20. package/lib/chevre/repo/additionalProperty.js +64 -92
  21. package/lib/chevre/repo/advanceBookingRequirement.js +69 -91
  22. package/lib/chevre/repo/aggregateOffer.js +392 -430
  23. package/lib/chevre/repo/aggregateOrder.js +50 -62
  24. package/lib/chevre/repo/aggregateReservation.js +76 -89
  25. package/lib/chevre/repo/aggregation.js +42 -63
  26. package/lib/chevre/repo/assetTransaction.js +692 -729
  27. package/lib/chevre/repo/authorization.js +115 -134
  28. package/lib/chevre/repo/categoryCode.js +114 -147
  29. package/lib/chevre/repo/comment.js +73 -82
  30. package/lib/chevre/repo/concurrentLock.js +17 -29
  31. package/lib/chevre/repo/confirmationNumber.js +19 -35
  32. package/lib/chevre/repo/creativeWork.js +152 -180
  33. package/lib/chevre/repo/credentials.js +39 -51
  34. package/lib/chevre/repo/customer.js +64 -88
  35. package/lib/chevre/repo/customerType.js +52 -62
  36. package/lib/chevre/repo/emailMessage.js +51 -80
  37. package/lib/chevre/repo/event.js +640 -684
  38. package/lib/chevre/repo/eventOffer.js +122 -125
  39. package/lib/chevre/repo/eventSellerMakesOffer.js +64 -76
  40. package/lib/chevre/repo/eventSeries.js +207 -244
  41. package/lib/chevre/repo/identity.js +94 -107
  42. package/lib/chevre/repo/identityProvider.js +72 -96
  43. package/lib/chevre/repo/issuer.js +102 -135
  44. package/lib/chevre/repo/member.js +238 -259
  45. package/lib/chevre/repo/memberProgram.js +157 -177
  46. package/lib/chevre/repo/merchantReturnPolicy.js +61 -94
  47. package/lib/chevre/repo/message.js +122 -135
  48. package/lib/chevre/repo/mongoose/onIndexCreated.js +0 -1
  49. package/lib/chevre/repo/mongoose/schemas/acceptedPaymentMethod.js +1 -1
  50. package/lib/chevre/repo/mongoose/schemas/account.js +1 -1
  51. package/lib/chevre/repo/mongoose/schemas/accountTitle.js +1 -1
  52. package/lib/chevre/repo/mongoose/schemas/accountTransaction.js +1 -1
  53. package/lib/chevre/repo/mongoose/schemas/accountingReport.js +1 -1
  54. package/lib/chevre/repo/mongoose/schemas/action.js +1 -1
  55. package/lib/chevre/repo/mongoose/schemas/actionRecipe.js +1 -1
  56. package/lib/chevre/repo/mongoose/schemas/additionalProperty.js +1 -1
  57. package/lib/chevre/repo/mongoose/schemas/advanceBookingRequirement.js +1 -1
  58. package/lib/chevre/repo/mongoose/schemas/aggregateOffer.js +1 -1
  59. package/lib/chevre/repo/mongoose/schemas/aggregateOrder.js +1 -1
  60. package/lib/chevre/repo/mongoose/schemas/aggregateReservation.js +1 -1
  61. package/lib/chevre/repo/mongoose/schemas/aggregation.js +1 -1
  62. package/lib/chevre/repo/mongoose/schemas/assetTransaction.js +1 -1
  63. package/lib/chevre/repo/mongoose/schemas/authorization.js +1 -1
  64. package/lib/chevre/repo/mongoose/schemas/categoryCode.js +1 -1
  65. package/lib/chevre/repo/mongoose/schemas/civicStructure.js +1 -1
  66. package/lib/chevre/repo/mongoose/schemas/creativeWork.js +1 -1
  67. package/lib/chevre/repo/mongoose/schemas/customer.js +1 -1
  68. package/lib/chevre/repo/mongoose/schemas/customerType.js +1 -1
  69. package/lib/chevre/repo/mongoose/schemas/event.js +1 -1
  70. package/lib/chevre/repo/mongoose/schemas/eventOffer.js +1 -1
  71. package/lib/chevre/repo/mongoose/schemas/eventSeries.js +1 -1
  72. package/lib/chevre/repo/mongoose/schemas/identity.js +1 -1
  73. package/lib/chevre/repo/mongoose/schemas/identityProvider.js +1 -1
  74. package/lib/chevre/repo/mongoose/schemas/issuer.js +1 -1
  75. package/lib/chevre/repo/mongoose/schemas/member/global.js +1 -1
  76. package/lib/chevre/repo/mongoose/schemas/member.js +1 -1
  77. package/lib/chevre/repo/mongoose/schemas/merchantReturnPolicy.js +1 -1
  78. package/lib/chevre/repo/mongoose/schemas/message.js +1 -1
  79. package/lib/chevre/repo/mongoose/schemas/movieTicketTypes.js +1 -1
  80. package/lib/chevre/repo/mongoose/schemas/note.js +1 -1
  81. package/lib/chevre/repo/mongoose/schemas/offerCatalog.js +1 -1
  82. package/lib/chevre/repo/mongoose/schemas/offerCatalogItem.js +1 -1
  83. package/lib/chevre/repo/mongoose/schemas/offerItemCondition.js +1 -1
  84. package/lib/chevre/repo/mongoose/schemas/order.js +1 -1
  85. package/lib/chevre/repo/mongoose/schemas/paymentService.js +1 -1
  86. package/lib/chevre/repo/mongoose/schemas/paymentServiceChannel.js +1 -1
  87. package/lib/chevre/repo/mongoose/schemas/pendingReservation.js +1 -1
  88. package/lib/chevre/repo/mongoose/schemas/pendingReservationAggregate.js +1 -1
  89. package/lib/chevre/repo/mongoose/schemas/place.js +1 -1
  90. package/lib/chevre/repo/mongoose/schemas/potentialAction.js +1 -1
  91. package/lib/chevre/repo/mongoose/schemas/product.js +1 -1
  92. package/lib/chevre/repo/mongoose/schemas/productModel.js +1 -1
  93. package/lib/chevre/repo/mongoose/schemas/productOffer.js +1 -1
  94. package/lib/chevre/repo/mongoose/schemas/reservation.js +1 -1
  95. package/lib/chevre/repo/mongoose/schemas/reserveInterface.js +1 -1
  96. package/lib/chevre/repo/mongoose/schemas/role.js +1 -1
  97. package/lib/chevre/repo/mongoose/schemas/schedule.js +1 -1
  98. package/lib/chevre/repo/mongoose/schemas/seller.js +1 -1
  99. package/lib/chevre/repo/mongoose/schemas/sellerReturnPolicy.js +1 -1
  100. package/lib/chevre/repo/mongoose/schemas/service/availableHour.js +1 -1
  101. package/lib/chevre/repo/mongoose/schemas/setting.js +1 -1
  102. package/lib/chevre/repo/mongoose/schemas/task.js +1 -2
  103. package/lib/chevre/repo/mongoose/schemas/ticket.js +1 -1
  104. package/lib/chevre/repo/mongoose/schemas/transaction.js +1 -1
  105. package/lib/chevre/repo/mongoose/schemas/transactionNumber.js +1 -1
  106. package/lib/chevre/repo/mongoose/schemas/trip.js +1 -1
  107. package/lib/chevre/repo/mongoose/schemas/webSite.js +1 -1
  108. package/lib/chevre/repo/movieTicketType.js +67 -94
  109. package/lib/chevre/repo/note.js +143 -147
  110. package/lib/chevre/repo/noteAboutOrder.js +112 -113
  111. package/lib/chevre/repo/offer/unitPriceInCatalog.js +330 -314
  112. package/lib/chevre/repo/offerCatalog.js +302 -334
  113. package/lib/chevre/repo/offerCatalogItem.js +289 -317
  114. package/lib/chevre/repo/offerItemCondition.js +60 -85
  115. package/lib/chevre/repo/order.js +559 -607
  116. package/lib/chevre/repo/orderInTransaction.js +113 -136
  117. package/lib/chevre/repo/orderNumber.js +95 -112
  118. package/lib/chevre/repo/ownershipInfo.js +212 -240
  119. package/lib/chevre/repo/passport.js +93 -102
  120. package/lib/chevre/repo/paymentMethod/creditCard.js +151 -169
  121. package/lib/chevre/repo/paymentService.js +179 -200
  122. package/lib/chevre/repo/paymentServiceChannel.js +76 -100
  123. package/lib/chevre/repo/paymentServiceProvider.js +186 -201
  124. package/lib/chevre/repo/pendingReservation.js +272 -305
  125. package/lib/chevre/repo/permit.js +47 -42
  126. package/lib/chevre/repo/person.js +217 -256
  127. package/lib/chevre/repo/place/busStop.js +76 -106
  128. package/lib/chevre/repo/place/entranceGate.js +123 -128
  129. package/lib/chevre/repo/place/hasPOS.js +108 -120
  130. package/lib/chevre/repo/place/movieTheater.js +185 -220
  131. package/lib/chevre/repo/place/screeningRoom.js +339 -325
  132. package/lib/chevre/repo/place/seat.js +538 -481
  133. package/lib/chevre/repo/place/section.js +328 -296
  134. package/lib/chevre/repo/potentialAction.js +67 -87
  135. package/lib/chevre/repo/priceSpecification.js +102 -146
  136. package/lib/chevre/repo/product.js +203 -239
  137. package/lib/chevre/repo/productHasOfferCatalog.js +39 -50
  138. package/lib/chevre/repo/productModel.js +94 -127
  139. package/lib/chevre/repo/productOffer.js +119 -118
  140. package/lib/chevre/repo/project.js +123 -141
  141. package/lib/chevre/repo/projectMakesOffer.js +96 -108
  142. package/lib/chevre/repo/rateLimit/offer.js +43 -57
  143. package/lib/chevre/repo/reservation.js +369 -398
  144. package/lib/chevre/repo/reserveInterface.js +31 -42
  145. package/lib/chevre/repo/role.js +93 -112
  146. package/lib/chevre/repo/schedule.js +25 -36
  147. package/lib/chevre/repo/seller.js +114 -147
  148. package/lib/chevre/repo/sellerMakesOffer.js +95 -110
  149. package/lib/chevre/repo/sellerPaymentAccepted.js +92 -109
  150. package/lib/chevre/repo/sellerReturnPolicy.js +74 -97
  151. package/lib/chevre/repo/service/availableHour.js +27 -38
  152. package/lib/chevre/repo/serviceOutput.js +54 -67
  153. package/lib/chevre/repo/serviceOutputIdentifier.js +46 -58
  154. package/lib/chevre/repo/setting/jwt.js +40 -50
  155. package/lib/chevre/repo/setting.js +48 -48
  156. package/lib/chevre/repo/stockHolder.js +179 -199
  157. package/lib/chevre/repo/task.js +610 -619
  158. package/lib/chevre/repo/telemetry.js +1 -0
  159. package/lib/chevre/repo/ticket.js +52 -65
  160. package/lib/chevre/repo/transaction.js +754 -815
  161. package/lib/chevre/repo/transactionNumber.js +67 -80
  162. package/lib/chevre/repo/transactionNumberCounter.js +68 -79
  163. package/lib/chevre/repo/transactionProcess.js +36 -47
  164. package/lib/chevre/repo/trip.js +144 -164
  165. package/lib/chevre/repo/webSite.js +90 -106
  166. package/lib/chevre/repository.js +455 -647
  167. package/lib/chevre/service/account.js +9 -21
  168. package/lib/chevre/service/accountTransaction/deposit.js +16 -17
  169. package/lib/chevre/service/accountTransaction/transfer.js +18 -22
  170. package/lib/chevre/service/accountTransaction/withdraw.js +16 -17
  171. package/lib/chevre/service/accountTransaction.js +4 -16
  172. package/lib/chevre/service/aggregation/event/aggregateOffers.js +63 -60
  173. package/lib/chevre/service/aggregation/event/aggregateScreeningEvent.js +52 -55
  174. package/lib/chevre/service/aggregation/event/findEventOffers.js +7 -17
  175. package/lib/chevre/service/aggregation/event/importFromCOA.js +4 -14
  176. package/lib/chevre/service/aggregation/project.js +10 -19
  177. package/lib/chevre/service/aggregation/system.js +182 -99
  178. package/lib/chevre/service/assetTransaction/cancelReservation/factory.js +31 -17
  179. package/lib/chevre/service/assetTransaction/cancelReservation/start.js +17 -24
  180. package/lib/chevre/service/assetTransaction/cancelReservation/startAndConfirm.js +17 -15
  181. package/lib/chevre/service/assetTransaction/cancelReservation.js +7 -18
  182. package/lib/chevre/service/assetTransaction/cancelReservationCOA/factory.js +11 -4
  183. package/lib/chevre/service/assetTransaction/cancelReservationCOA.js +4 -13
  184. package/lib/chevre/service/assetTransaction/fixInformAction.js +6 -16
  185. package/lib/chevre/service/assetTransaction/moneyTransfer/potentialActions.js +13 -25
  186. package/lib/chevre/service/assetTransaction/moneyTransfer.js +101 -90
  187. package/lib/chevre/service/assetTransaction/pay/cancel.js +3 -12
  188. package/lib/chevre/service/assetTransaction/pay/check.js +4 -14
  189. package/lib/chevre/service/assetTransaction/pay/confirm.js +18 -21
  190. package/lib/chevre/service/assetTransaction/pay/exportTasksById.js +4 -14
  191. package/lib/chevre/service/assetTransaction/pay/publishPaymentUrl.js +33 -34
  192. package/lib/chevre/service/assetTransaction/pay/searchGMOTrade.js +7 -17
  193. package/lib/chevre/service/assetTransaction/pay/start/account/validation.js +6 -16
  194. package/lib/chevre/service/assetTransaction/pay/start/factory.js +64 -37
  195. package/lib/chevre/service/assetTransaction/pay/start/preStart/validateAcceptedPaymentMethodIfNeeded.js +7 -19
  196. package/lib/chevre/service/assetTransaction/pay/start/preStart/validateSeller.js +6 -16
  197. package/lib/chevre/service/assetTransaction/pay/start/processAuthorizeAccount.js +7 -17
  198. package/lib/chevre/service/assetTransaction/pay/start/processAuthorizeCreditCard.js +9 -15
  199. package/lib/chevre/service/assetTransaction/pay/start/processAuthorizeMovieTicket.js +3 -12
  200. package/lib/chevre/service/assetTransaction/pay/start.js +29 -35
  201. package/lib/chevre/service/assetTransaction/refund/factory.js +36 -16
  202. package/lib/chevre/service/assetTransaction/refund/potentialActions.js +12 -21
  203. package/lib/chevre/service/assetTransaction/refund.js +35 -41
  204. package/lib/chevre/service/assetTransaction/registerService/factory.js +65 -28
  205. package/lib/chevre/service/assetTransaction/registerService/potentialActions.js +50 -43
  206. package/lib/chevre/service/assetTransaction/registerService.js +45 -56
  207. package/lib/chevre/service/assetTransaction/reserve/cancel.js +5 -14
  208. package/lib/chevre/service/assetTransaction/reserve/confirm/factory.js +15 -4
  209. package/lib/chevre/service/assetTransaction/reserve/confirm.js +21 -26
  210. package/lib/chevre/service/assetTransaction/reserve/exportTasksById.js +3 -13
  211. package/lib/chevre/service/assetTransaction/reserve/start/createSubReservations.js +99 -83
  212. package/lib/chevre/service/assetTransaction/reserve/start/factory/createPointAward.js +17 -12
  213. package/lib/chevre/service/assetTransaction/reserve/start/factory/createReservation.js +108 -72
  214. package/lib/chevre/service/assetTransaction/reserve/start/factory/createStartParams.js +69 -30
  215. package/lib/chevre/service/assetTransaction/reserve/start/factory/price.js +29 -20
  216. package/lib/chevre/service/assetTransaction/reserve/start.js +91 -108
  217. package/lib/chevre/service/assetTransaction/reserve/validateStartRequest/fixExtendedEventOffer.js +5 -15
  218. package/lib/chevre/service/assetTransaction/reserve/validateStartRequest/validateIssuedOfferIfExists.js +41 -54
  219. package/lib/chevre/service/assetTransaction/reserve/validateStartRequest/validateMemberTierIfExists.js +42 -56
  220. package/lib/chevre/service/assetTransaction/reserve/validateStartRequest/verifyTicketTokenAsNeeded.js +7 -19
  221. package/lib/chevre/service/assetTransaction/reserve/validateStartRequest.js +15 -27
  222. package/lib/chevre/service/assetTransaction/reserveCOA/cancel.js +24 -24
  223. package/lib/chevre/service/assetTransaction/reserveCOA/factory.js +12 -4
  224. package/lib/chevre/service/assetTransaction/reserveCOA.js +4 -13
  225. package/lib/chevre/service/assetTransaction.js +17 -21
  226. package/lib/chevre/service/delivery/factory.js +3 -4
  227. package/lib/chevre/service/delivery/product/factory.js +16 -7
  228. package/lib/chevre/service/delivery/reservation/factory.js +14 -3
  229. package/lib/chevre/service/delivery.js +48 -52
  230. package/lib/chevre/service/event/processUpdateMovieTheater.js +21 -26
  231. package/lib/chevre/service/event/saveScreeningEventSeries.js +56 -41
  232. package/lib/chevre/service/event/saveScreeningEvents.js +14 -29
  233. package/lib/chevre/service/event.js +34 -30
  234. package/lib/chevre/service/iam.js +8 -17
  235. package/lib/chevre/service/moneyTransfer.js +128 -112
  236. package/lib/chevre/service/notification/factory.js +11 -10
  237. package/lib/chevre/service/notification/notifyAbortedTasksByEmail.js +11 -15
  238. package/lib/chevre/service/notification/notifyByEmail.js +7 -19
  239. package/lib/chevre/service/notification/sendEmailMessage.js +23 -26
  240. package/lib/chevre/service/notification/triggerWebhook.js +58 -56
  241. package/lib/chevre/service/offer/any.js +6 -15
  242. package/lib/chevre/service/offer/event/authorize/factory.js +139 -63
  243. package/lib/chevre/service/offer/event/authorize/processStartReserve4chevre/requestedProgramMembershipUsed2permit.js +8 -19
  244. package/lib/chevre/service/offer/event/authorize/processStartReserve4chevre.js +43 -27
  245. package/lib/chevre/service/offer/event/authorize.js +114 -71
  246. package/lib/chevre/service/offer/event/checkAvailability.js +5 -15
  247. package/lib/chevre/service/offer/event/importFromCOA/factory.js +9 -3
  248. package/lib/chevre/service/offer/event/importFromCOA.js +13 -19
  249. package/lib/chevre/service/offer/event/issueEventOfferTicket.js +38 -39
  250. package/lib/chevre/service/offer/event/searchEventTicketOffers.js +26 -41
  251. package/lib/chevre/service/offer/event/searchOfferAppliesToMovieTicket.js +11 -22
  252. package/lib/chevre/service/offer/event/searchOfferCatalogItemAvailability.js +13 -26
  253. package/lib/chevre/service/offer/event/searchOfferCatalogItems.js +15 -23
  254. package/lib/chevre/service/offer/event/searchOffersByIds.js +24 -39
  255. package/lib/chevre/service/offer/event/searchPriceSpecs4event.js +5 -14
  256. package/lib/chevre/service/offer/event/voidTransaction/processVoidTransaction4chevre.js +4 -13
  257. package/lib/chevre/service/offer/event/voidTransaction/processVoidTransaction4coa.js +6 -15
  258. package/lib/chevre/service/offer/event/voidTransaction.js +35 -41
  259. package/lib/chevre/service/offer/event/voidTransactionByActionId.js +14 -20
  260. package/lib/chevre/service/offer/eventServiceByCOA/acceptOffer/authorize.js +52 -42
  261. package/lib/chevre/service/offer/eventServiceByCOA/acceptOffer/factory.js +5 -1
  262. package/lib/chevre/service/offer/eventServiceByCOA/acceptOffer.js +34 -37
  263. package/lib/chevre/service/offer/eventServiceByCOA/authorize/factory.js +45 -26
  264. package/lib/chevre/service/offer/eventServiceByCOA/authorize/validateAcceptedOffers.js +67 -62
  265. package/lib/chevre/service/offer/eventServiceByCOA/authorize.js +16 -27
  266. package/lib/chevre/service/offer/eventServiceByCOA/authorizeByAcceptAction.js +8 -18
  267. package/lib/chevre/service/offer/eventServiceByCOA/changeOffers.js +42 -43
  268. package/lib/chevre/service/offer/eventServiceByCOA/findAcceptAction.js +22 -25
  269. package/lib/chevre/service/offer/factory.js +18 -8
  270. package/lib/chevre/service/offer/moneyTransfer/authorize.js +31 -36
  271. package/lib/chevre/service/offer/moneyTransfer/returnMoneyTransfer.js +9 -18
  272. package/lib/chevre/service/offer/moneyTransfer/settleTransaction.js +10 -19
  273. package/lib/chevre/service/offer/moneyTransfer/voidTransaction.js +14 -24
  274. package/lib/chevre/service/offer/onEventChanged.js +69 -65
  275. package/lib/chevre/service/offer/product/factory.js +54 -32
  276. package/lib/chevre/service/offer/product/searchProductOffers.js +30 -24
  277. package/lib/chevre/service/offer/product.js +106 -82
  278. package/lib/chevre/service/offer.js +48 -45
  279. package/lib/chevre/service/order/confirmPayTransaction.js +28 -27
  280. package/lib/chevre/service/order/createAccountingReportIfNotExist.js +54 -41
  281. package/lib/chevre/service/order/deleteOrder.js +28 -36
  282. package/lib/chevre/service/order/findPlaceOrderTransaction.js +3 -12
  283. package/lib/chevre/service/order/onAssetTransactionStatusChanged.js +64 -70
  284. package/lib/chevre/service/order/onOrderStatusChanged/onOrderCancelled/factory.js +1 -2
  285. package/lib/chevre/service/order/onOrderStatusChanged/onOrderCancelled.js +3 -12
  286. package/lib/chevre/service/order/onOrderStatusChanged/onOrderDelivered/factory.js +11 -6
  287. package/lib/chevre/service/order/onOrderStatusChanged/onOrderDelivered.js +5 -14
  288. package/lib/chevre/service/order/onOrderStatusChanged/onOrderDeliveredPartially/factory.js +22 -9
  289. package/lib/chevre/service/order/onOrderStatusChanged/onOrderDeliveredPartially.js +5 -14
  290. package/lib/chevre/service/order/onOrderStatusChanged/onOrderInTransit.js +23 -26
  291. package/lib/chevre/service/order/onOrderStatusChanged/onOrderPaymentDue.js +13 -19
  292. package/lib/chevre/service/order/onOrderStatusChanged/onOrderProcessing/createSendEmailMessageTaskIfNotExist.js +5 -14
  293. package/lib/chevre/service/order/onOrderStatusChanged/onOrderProcessing/factory.js +24 -14
  294. package/lib/chevre/service/order/onOrderStatusChanged/onOrderProcessing/processOrder.js +23 -32
  295. package/lib/chevre/service/order/onOrderStatusChanged/onOrderProcessing.js +8 -18
  296. package/lib/chevre/service/order/onOrderStatusChanged/onOrderReturned/factory.js +10 -9
  297. package/lib/chevre/service/order/onOrderStatusChanged/onOrderReturned.js +23 -28
  298. package/lib/chevre/service/order/onOrderUpdated/factory.js +3 -5
  299. package/lib/chevre/service/order/onOrderUpdated.js +13 -15
  300. package/lib/chevre/service/order/payOrder.js +3 -12
  301. package/lib/chevre/service/order/placeOrder/createPlacingOrderFromExistingTransaction.js +9 -20
  302. package/lib/chevre/service/order/placeOrder/factory/orderedItem.js +31 -15
  303. package/lib/chevre/service/order/placeOrder/factory.js +35 -22
  304. package/lib/chevre/service/order/placeOrder/voidAcceptedOfferIfNecessary.js +3 -12
  305. package/lib/chevre/service/order/placeOrder.js +12 -23
  306. package/lib/chevre/service/order/placeOrderWithoutTransaction.js +10 -18
  307. package/lib/chevre/service/order/returnOrder.js +27 -30
  308. package/lib/chevre/service/order/sendOrder.js +37 -37
  309. package/lib/chevre/service/payment/any/authorize/fixTransactionNumber.js +19 -25
  310. package/lib/chevre/service/payment/any/authorize/handlePrePublishedPaymentMethodIdOnAuthorizing.js +24 -39
  311. package/lib/chevre/service/payment/any/factory.js +106 -50
  312. package/lib/chevre/service/payment/any/fixOrderAsNeeded.js +4 -13
  313. package/lib/chevre/service/payment/any/onPayActionCompleted.js +13 -18
  314. package/lib/chevre/service/payment/any/onPaymentStatusChanged/onPaid.js +34 -37
  315. package/lib/chevre/service/payment/any/onPaymentStatusChanged/onRefunded.js +18 -24
  316. package/lib/chevre/service/payment/any/onPaymentStatusChanged.js +16 -16
  317. package/lib/chevre/service/payment/any/onRefundActionCompletedOrFailed.js +15 -21
  318. package/lib/chevre/service/payment/any/person2username.js +32 -45
  319. package/lib/chevre/service/payment/any/publishPaymentUrl/fixTransactionNumberOnPublishPaymentUrl.js +8 -18
  320. package/lib/chevre/service/payment/any/verifyTicketTokenAsNeeded.js +5 -17
  321. package/lib/chevre/service/payment/any.js +181 -142
  322. package/lib/chevre/service/payment/creditCard/authorize/handleAuthorizeError.js +2 -2
  323. package/lib/chevre/service/payment/creditCard/authorize/processAuthorizeCreditCard.js +44 -25
  324. package/lib/chevre/service/payment/creditCard/authorize/processAuthorizeCreditCard3ds.js +6 -15
  325. package/lib/chevre/service/payment/creditCard/authorize/processAuthorizeCreditCard3dsResult2recipe.js +5 -1
  326. package/lib/chevre/service/payment/creditCard/authorize/processAuthorizeCreditCardResult2recipe.js +10 -2
  327. package/lib/chevre/service/payment/creditCard/authorize.js +20 -22
  328. package/lib/chevre/service/payment/creditCard/factory.js +22 -4
  329. package/lib/chevre/service/payment/creditCard/getGMOInfoFromSeller.js +8 -18
  330. package/lib/chevre/service/payment/creditCard/payCreditCard.js +31 -36
  331. package/lib/chevre/service/payment/creditCard/refundCreditCard.js +40 -51
  332. package/lib/chevre/service/payment/creditCard/searchGMOTrade.js +33 -45
  333. package/lib/chevre/service/payment/creditCard/voidTransaction.js +15 -26
  334. package/lib/chevre/service/payment/faceToFace.js +14 -23
  335. package/lib/chevre/service/payment/factory/createPayObjectServiceOutput.js +44 -25
  336. package/lib/chevre/service/payment/factory.js +50 -24
  337. package/lib/chevre/service/payment/movieTicket/authorize.js +35 -30
  338. package/lib/chevre/service/payment/movieTicket/checkMovieTicket.js +22 -25
  339. package/lib/chevre/service/payment/movieTicket/factory.js +33 -10
  340. package/lib/chevre/service/payment/movieTicket/getCredentials.js +5 -15
  341. package/lib/chevre/service/payment/movieTicket/payMovieTicket.js +29 -40
  342. package/lib/chevre/service/payment/movieTicket/processPurchaseNumberAuth.js +8 -18
  343. package/lib/chevre/service/payment/movieTicket/refundMovieTicket.js +60 -60
  344. package/lib/chevre/service/payment/movieTicket/validation.js +41 -37
  345. package/lib/chevre/service/payment/movieTicket/voidTransaction.js +8 -18
  346. package/lib/chevre/service/payment/paymentCard.js +87 -104
  347. package/lib/chevre/service/permit.js +36 -35
  348. package/lib/chevre/service/product.js +23 -28
  349. package/lib/chevre/service/project.js +22 -31
  350. package/lib/chevre/service/report/ownershipInfo.js +3 -4
  351. package/lib/chevre/service/report/telemetry.js +51 -70
  352. package/lib/chevre/service/reserve/cancelReservation.js +92 -93
  353. package/lib/chevre/service/reserve/checkInReservation.js +24 -29
  354. package/lib/chevre/service/reserve/confirmReservation.js +33 -39
  355. package/lib/chevre/service/reserve/factory.js +42 -20
  356. package/lib/chevre/service/reserve/findByCode.js +13 -18
  357. package/lib/chevre/service/reserve/potentialActions/onPendingReservationCanceled.js +18 -24
  358. package/lib/chevre/service/reserve/potentialActions/onReservationCanceled.js +17 -25
  359. package/lib/chevre/service/reserve/potentialActions/onReservationCheckedIn.js +38 -30
  360. package/lib/chevre/service/reserve/potentialActions/onReservationConfirmed.js +45 -37
  361. package/lib/chevre/service/reserve/potentialActions/onReservationUsed.js +37 -33
  362. package/lib/chevre/service/reserve/potentialActions/onReservationsCreated.js +17 -23
  363. package/lib/chevre/service/reserve/searchByOrder.js +10 -20
  364. package/lib/chevre/service/reserve/useReservation.js +47 -34
  365. package/lib/chevre/service/reserve/verifyToken4reservation.js +7 -14
  366. package/lib/chevre/service/reserveCOA/cancelReservation.js +7 -17
  367. package/lib/chevre/service/reserveCOA/factory.js +5 -1
  368. package/lib/chevre/service/task/acceptCOAOffer.js +20 -25
  369. package/lib/chevre/service/task/aggregateOffers.js +3 -12
  370. package/lib/chevre/service/task/aggregateOnSystem.js +4 -14
  371. package/lib/chevre/service/task/aggregateScreeningEvent.js +3 -12
  372. package/lib/chevre/service/task/authorizePayment.js +9 -15
  373. package/lib/chevre/service/task/cancelMoneyTransfer.js +3 -12
  374. package/lib/chevre/service/task/cancelPendingReservation.js +10 -20
  375. package/lib/chevre/service/task/cancelReservation.js +3 -12
  376. package/lib/chevre/service/task/checkMovieTicket.js +16 -19
  377. package/lib/chevre/service/task/checkResource.js +7 -16
  378. package/lib/chevre/service/task/confirmMoneyTransfer.js +3 -12
  379. package/lib/chevre/service/task/confirmPayTransaction.js +6 -12
  380. package/lib/chevre/service/task/confirmRegisterService.js +3 -12
  381. package/lib/chevre/service/task/confirmRegisterServiceTransaction.js +24 -31
  382. package/lib/chevre/service/task/confirmReserveTransaction.js +48 -45
  383. package/lib/chevre/service/task/createAccountingReport.js +14 -20
  384. package/lib/chevre/service/task/deletePerson.js +48 -60
  385. package/lib/chevre/service/task/deleteTransaction.js +3 -12
  386. package/lib/chevre/service/task/givePointAward.js +3 -12
  387. package/lib/chevre/service/task/handleNotification.js +4 -14
  388. package/lib/chevre/service/task/importEventCapacitiesFromCOA.js +6 -16
  389. package/lib/chevre/service/task/importEventsFromCOA.js +6 -16
  390. package/lib/chevre/service/task/importOffersFromCOA.js +8 -18
  391. package/lib/chevre/service/task/invalidatePaymentUrl.js +6 -12
  392. package/lib/chevre/service/task/moneyTransfer.js +3 -12
  393. package/lib/chevre/service/task/onAssetTransactionStatusChanged.js +3 -12
  394. package/lib/chevre/service/task/onAuthorizationCreated.js +11 -19
  395. package/lib/chevre/service/task/onEventChanged.js +3 -12
  396. package/lib/chevre/service/task/onOrderPaymentCompleted.js +3 -12
  397. package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByAggregateOffer.js +7 -16
  398. package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByEventSeries.js +7 -16
  399. package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByMovieTheater.js +8 -17
  400. package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByOfferCatalog.js +10 -19
  401. package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByProduct.js +8 -17
  402. package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByRoom.js +6 -15
  403. package/lib/chevre/service/task/onResourceDeleted/deleteResourcesBySeller.js +14 -24
  404. package/lib/chevre/service/task/onResourceDeleted.js +17 -27
  405. package/lib/chevre/service/task/onResourceUpdated/onAggregateOfferUpdated.js +9 -21
  406. package/lib/chevre/service/task/onResourceUpdated/onCategoryCodeUpdated.js +3 -12
  407. package/lib/chevre/service/task/onResourceUpdated/onHasPOSUpdated.js +11 -23
  408. package/lib/chevre/service/task/onResourceUpdated/onOfferCatalogUpdated.js +13 -25
  409. package/lib/chevre/service/task/onResourceUpdated/syncCategoryCode.js +9 -15
  410. package/lib/chevre/service/task/onResourceUpdated/syncOfferCatalog.js +21 -27
  411. package/lib/chevre/service/task/onResourceUpdated.js +113 -158
  412. package/lib/chevre/service/task/pay.js +8 -16
  413. package/lib/chevre/service/task/payment/invalidatePaymentUrlByTask.js +4 -14
  414. package/lib/chevre/service/task/payment/payByTask.js +49 -38
  415. package/lib/chevre/service/task/payment/refundByTask.js +7 -17
  416. package/lib/chevre/service/task/payment/voidPaymentByTask.js +6 -15
  417. package/lib/chevre/service/task/placeOrder.js +6 -12
  418. package/lib/chevre/service/task/publishPaymentUrl.js +9 -14
  419. package/lib/chevre/service/task/refund.js +8 -16
  420. package/lib/chevre/service/task/registerService.js +3 -12
  421. package/lib/chevre/service/task/reserve.js +3 -12
  422. package/lib/chevre/service/task/returnMoneyTransfer.js +3 -12
  423. package/lib/chevre/service/task/returnOrder.js +6 -12
  424. package/lib/chevre/service/task/returnPayTransaction.js +54 -49
  425. package/lib/chevre/service/task/returnPointAward.js +3 -12
  426. package/lib/chevre/service/task/returnReserveTransaction.js +29 -30
  427. package/lib/chevre/service/task/sendEmailMessage.js +6 -13
  428. package/lib/chevre/service/task/sendOrder.js +12 -15
  429. package/lib/chevre/service/task/syncResourcesFromCOA.js +39 -45
  430. package/lib/chevre/service/task/triggerWebhook.js +6 -12
  431. package/lib/chevre/service/task/useReservation.js +11 -14
  432. package/lib/chevre/service/task/voidMoneyTransferTransaction.js +3 -12
  433. package/lib/chevre/service/task/voidPayTransaction.js +7 -12
  434. package/lib/chevre/service/task/voidPayment.js +3 -12
  435. package/lib/chevre/service/task/voidRegisterServiceTransaction.js +3 -12
  436. package/lib/chevre/service/task/voidReserveTransaction.js +10 -16
  437. package/lib/chevre/service/task.js +16 -26
  438. package/lib/chevre/service/taskHandler/onOperationFailed/informTaskIfNeeded.js +9 -20
  439. package/lib/chevre/service/taskHandler/onOperationFailed.js +20 -17
  440. package/lib/chevre/service/taskHandler.js +19 -22
  441. package/lib/chevre/service/transaction/deleteTransaction.js +104 -88
  442. package/lib/chevre/service/transaction/moneyTransfer/exportTasks/factory.js +15 -9
  443. package/lib/chevre/service/transaction/moneyTransfer/factory.js +13 -4
  444. package/lib/chevre/service/transaction/moneyTransfer/potentialActions.js +12 -24
  445. package/lib/chevre/service/transaction/moneyTransfer.js +119 -98
  446. package/lib/chevre/service/transaction/placeOrder/confirm/potentialActions/sendEmailMessage.js +49 -51
  447. package/lib/chevre/service/transaction/placeOrder/confirm/potentialActions.js +14 -25
  448. package/lib/chevre/service/transaction/placeOrder/confirm/publishCode.js +4 -14
  449. package/lib/chevre/service/transaction/placeOrder/confirm/validation/validateInvoiceReferencesOrder.js +3 -4
  450. package/lib/chevre/service/transaction/placeOrder/confirm/validation/validateMovieTicket.js +3 -6
  451. package/lib/chevre/service/transaction/placeOrder/confirm/validation/validatePrice.js +2 -3
  452. package/lib/chevre/service/transaction/placeOrder/confirm/validation.js +30 -47
  453. package/lib/chevre/service/transaction/placeOrder/confirm.js +75 -59
  454. package/lib/chevre/service/transaction/placeOrder/exportTasks/factory.js +31 -15
  455. package/lib/chevre/service/transaction/placeOrder/exportTasksById.js +6 -15
  456. package/lib/chevre/service/transaction/placeOrder/publishConfirmationNumberIfNotExist.js +6 -15
  457. package/lib/chevre/service/transaction/placeOrder/publishOrderNumberIfNotExist.js +7 -16
  458. package/lib/chevre/service/transaction/placeOrder/start/factory.js +27 -7
  459. package/lib/chevre/service/transaction/placeOrder/start/validateStartRequest.js +53 -60
  460. package/lib/chevre/service/transaction/placeOrder/start.js +14 -18
  461. package/lib/chevre/service/transaction/returnOrder/exportTasks/factory.js +13 -7
  462. package/lib/chevre/service/transaction/returnOrder/potentialActions/returnPaymentMethod.js +176 -190
  463. package/lib/chevre/service/transaction/returnOrder/potentialActions/returnPointAward.js +75 -89
  464. package/lib/chevre/service/transaction/returnOrder/potentialActions/sendEmailMessage.js +40 -48
  465. package/lib/chevre/service/transaction/returnOrder/potentialActions.js +52 -56
  466. package/lib/chevre/service/transaction/returnOrder/preStart/findApplicableReturnPolicy.js +100 -104
  467. package/lib/chevre/service/transaction/returnOrder/preStart/getReturnPolicyByProject.js +60 -80
  468. package/lib/chevre/service/transaction/returnOrder/preStart.js +42 -47
  469. package/lib/chevre/service/transaction/returnOrder.js +32 -37
  470. package/lib/chevre/service/transaction.js +75 -46
  471. package/lib/chevre/service/validation/validateEvent.js +2 -11
  472. package/lib/chevre/service/validation/validateOrder.js +7 -18
  473. package/lib/chevre/service.js +85 -131
  474. package/lib/chevre/settings/aggregation.js +4 -0
  475. package/lib/chevre/settings.js +7 -1
  476. package/lib/index.js +0 -1
  477. package/package.json +6 -11
  478. package/example/src/chevre/addEventBySchedule.ts +0 -46
  479. package/example/src/idaas/auth0/adminApplications.ts +0 -183
  480. package/example/src/idaas/auth0/getToken.ts +0 -55
  481. package/example/src/idaas/auth0/getTokenByPrivateKeyJWT.ts +0 -84
@@ -1,24 +1,4 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __rest = (this && this.__rest) || function (s, e) {
12
- var t = {};
13
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
14
- t[p] = s[p];
15
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
16
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
17
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
18
- t[p[i]] = s[p[i]];
19
- }
20
- return t;
21
- };
22
2
  Object.defineProperty(exports, "__esModule", { value: true });
23
3
  exports.getReturnPolicyByProject = getReturnPolicyByProject;
24
4
  const http_status_1 = require("http-status");
@@ -29,10 +9,9 @@ function createOrder4returnPolicy(params) {
29
9
  orderNumber: params.order.orderNumber,
30
10
  price: params.order.price,
31
11
  acceptedOffers: params.order.acceptedOffers.map((o) => {
32
- var _a;
33
12
  if (o.itemOffered.typeOf === factory.reservationType.EventReservation) {
34
13
  const reservation = o.itemOffered;
35
- const priceComponent = (_a = o.priceSpecification) === null || _a === void 0 ? void 0 : _a.priceComponent;
14
+ const priceComponent = o.priceSpecification?.priceComponent;
36
15
  return {
37
16
  itemOffered: {
38
17
  additionalProperty: reservation.additionalProperty,
@@ -49,7 +28,7 @@ function createOrder4returnPolicy(params) {
49
28
  priceSpecification: {
50
29
  priceComponent: (Array.isArray(priceComponent))
51
30
  ? priceComponent.map((component) => {
52
- const { accounting, name, priceCurrency, valueAddedTaxIncluded } = component, postingComponent = __rest(component, ["accounting", "name", "priceCurrency", "valueAddedTaxIncluded"]);
31
+ const { accounting, name, priceCurrency, valueAddedTaxIncluded, ...postingComponent } = component;
53
32
  return postingComponent;
54
33
  })
55
34
  : []
@@ -68,65 +47,66 @@ const TIMEOUT = 5000;
68
47
  /**
69
48
  * プロジェクトのカスタム返品ポリシーをリモートから取得する
70
49
  */
71
- function getReturnPolicyByProject(params) {
72
- return __awaiter(this, void 0, void 0, function* () {
73
- var _a;
74
- // implement with fetch(2024-01-20~)
50
+ async function getReturnPolicyByProject(params) {
51
+ // implement with fetch(2024-01-20~)
52
+ try {
53
+ const { identifier, sameAs } = params;
54
+ const res = await fetch(sameAs, {
55
+ method: 'POST',
56
+ headers: {
57
+ 'Content-Type': 'application/json'
58
+ },
59
+ body: JSON.stringify({
60
+ order: createOrder4returnPolicy({ order: params.order })
61
+ }),
62
+ // body data type must match "Content-Type" header
63
+ signal: AbortSignal.timeout(TIMEOUT)
64
+ });
65
+ let body;
75
66
  try {
76
- const { identifier, sameAs } = params;
77
- const res = yield fetch(sameAs, {
78
- method: 'POST',
79
- headers: {
80
- 'Content-Type': 'application/json'
81
- },
82
- body: JSON.stringify({
83
- order: createOrder4returnPolicy({ order: params.order })
84
- }),
85
- // body data type must match "Content-Type" header
86
- signal: AbortSignal.timeout(TIMEOUT)
87
- });
88
- let body;
89
- try {
90
- body = (yield res.json());
91
- }
92
- catch (error) {
93
- // no op
94
- }
95
- let returnPolicy;
96
- switch (res.status) {
97
- case http_status_1.OK:
98
- case http_status_1.CREATED:
99
- case http_status_1.ACCEPTED:
100
- case http_status_1.NO_CONTENT:
101
- const restockingFeeValue = (_a = body === null || body === void 0 ? void 0 : body.restockingFee) === null || _a === void 0 ? void 0 : _a.value;
102
- if (typeof restockingFeeValue !== 'number') {
103
- throw new factory.errors.Internal('invalid return policy');
104
- }
105
- else {
106
- const itemCondition = body === null || body === void 0 ? void 0 : body.itemCondition;
107
- if (itemCondition !== undefined) {
108
- if (itemCondition !== factory.offerItemCondition.OfferItemCondition.NewCondition) {
109
- throw new factory.errors.Argument('', `unknown itemCondition: ${itemCondition}`);
110
- }
67
+ body = await res.json();
68
+ }
69
+ catch (error) {
70
+ // no op
71
+ }
72
+ let returnPolicy;
73
+ switch (res.status) {
74
+ case http_status_1.OK:
75
+ case http_status_1.CREATED:
76
+ case http_status_1.ACCEPTED:
77
+ case http_status_1.NO_CONTENT:
78
+ const restockingFeeValue = body?.restockingFee?.value;
79
+ if (typeof restockingFeeValue !== 'number') {
80
+ throw new factory.errors.Internal('invalid return policy');
81
+ }
82
+ else {
83
+ const itemCondition = body?.itemCondition;
84
+ if (itemCondition !== undefined) {
85
+ if (itemCondition !== factory.offerItemCondition.OfferItemCondition.NewCondition) {
86
+ throw new factory.errors.Argument('', `unknown itemCondition: ${itemCondition}`);
111
87
  }
112
- returnPolicy = Object.assign({ typeOf: 'MerchantReturnPolicy', restockingFee: {
113
- currency: factory.priceCurrency.JPY,
114
- typeOf: 'MonetaryAmount',
115
- value: restockingFeeValue
116
- }, identifier }, (typeof itemCondition === 'string') ? { itemCondition } : undefined // support itemCondition(2025-05-17~)
117
- );
118
88
  }
119
- break;
120
- case http_status_1.NOT_FOUND:
121
- throw new factory.errors.Argument('', `custom return policy returned statusCode: ${res.status}`);
122
- // break;
123
- default:
124
- throw new factory.errors.Internal(`ProjectReturnPolicy unavailable. statusCode: ${res.status} body: ${body}`);
125
- }
126
- return returnPolicy;
127
- }
128
- catch (err) {
129
- throw err;
89
+ returnPolicy = {
90
+ typeOf: 'MerchantReturnPolicy',
91
+ restockingFee: {
92
+ currency: factory.priceCurrency.JPY,
93
+ typeOf: 'MonetaryAmount',
94
+ value: restockingFeeValue
95
+ },
96
+ identifier, // keep identifier(2024-06-26~)
97
+ ...(typeof itemCondition === 'string') ? { itemCondition } : undefined // support itemCondition(2025-05-17~)
98
+ };
99
+ }
100
+ break;
101
+ case http_status_1.NOT_FOUND:
102
+ throw new factory.errors.Argument('', `custom return policy returned statusCode: ${res.status}`);
103
+ // break;
104
+ default:
105
+ throw new factory.errors.Internal(`ProjectReturnPolicy unavailable. statusCode: ${res.status} body: ${body}`);
130
106
  }
131
- });
107
+ return returnPolicy;
108
+ }
109
+ catch (err) {
110
+ throw err;
111
+ }
132
112
  }
@@ -1,13 +1,4 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  exports.preStart = preStart;
13
4
  const createDebug = require("debug");
@@ -18,12 +9,11 @@ const debug = createDebug('chevre-domain:service');
18
9
  * 返品取引開始前処理
19
10
  */
20
11
  function preStart(params) {
21
- // tslint:disable-next-line:max-func-body-length
22
- return (repos) => __awaiter(this, void 0, void 0, function* () {
12
+ return async (repos) => {
23
13
  const now = new Date();
24
- const { acceptedOffers, eventIds, offerIds, orders } = yield fixOrders(params)(repos);
14
+ const { acceptedOffers, eventIds, offerIds, orders } = await fixOrders(params)(repos);
25
15
  // sellerはorderから自動取得
26
- const sellers = yield repos.seller.projectFields({
16
+ const sellers = await repos.seller.projectFields({
27
17
  limit: 1,
28
18
  page: 1,
29
19
  id: { $eq: String(orders[0].seller.id) }
@@ -32,17 +22,17 @@ function preStart(params) {
32
22
  if (seller === undefined) {
33
23
  throw new factory.errors.NotFound(factory.organizationType.Corporation);
34
24
  }
35
- yield validateOrder({ orders })();
25
+ await validateOrder({ orders })();
36
26
  let offers = [];
37
27
  if (offerIds.length > 0) {
38
- offers = yield repos.offer.search({
28
+ offers = await repos.offer.search({
39
29
  id: { $in: offerIds }
40
30
  });
41
31
  }
42
32
  // イベント開始日時取得
43
33
  let events = [];
44
34
  if (eventIds.length > 0) {
45
- events = yield repos.event.projectEventFields({
35
+ events = await repos.event.projectEventFields({
46
36
  id: { $in: eventIds },
47
37
  typeOf: factory.eventType.ScreeningEvent
48
38
  }, ['startDate']);
@@ -52,7 +42,7 @@ function preStart(params) {
52
42
  const sellerReturnPolicyIdentifiers = seller.hasMerchantReturnPolicy.map(({ identifier }) => identifier);
53
43
  // support sellerReturnPolicyRepo(2025-01-19~)
54
44
  if (sellerReturnPolicyIdentifiers.length > 0) {
55
- returnPolicies = yield repos.sellerReturnPolicy.projectFields({
45
+ returnPolicies = await repos.sellerReturnPolicy.projectFields({
56
46
  project: { id: { $eq: seller.project.id } },
57
47
  identifier: { $in: sellerReturnPolicyIdentifiers }
58
48
  }, ['applicablePaymentMethod', 'identifier', 'itemCondition', 'merchantReturnDays', 'restockingFee', 'typeOf']);
@@ -62,29 +52,35 @@ function preStart(params) {
62
52
  // アイテムコンディション取得
63
53
  let offerItemConditions = [];
64
54
  const itemConditionIds = returnPolicies
65
- .filter((returnPolicy) => { var _a; return typeof ((_a = returnPolicy.itemCondition) === null || _a === void 0 ? void 0 : _a.id) === 'string'; })
66
- .map((returnPolicy) => { var _a; return String((_a = returnPolicy.itemCondition) === null || _a === void 0 ? void 0 : _a.id); });
55
+ .filter((returnPolicy) => typeof returnPolicy.itemCondition?.id === 'string')
56
+ .map((returnPolicy) => String(returnPolicy.itemCondition?.id));
67
57
  if (itemConditionIds.length > 0) {
68
- offerItemConditions = yield repos.offerItemCondition.projectFields({
58
+ offerItemConditions = await repos.offerItemCondition.projectFields({
69
59
  id: { $in: itemConditionIds }
70
60
  }, ['id', 'identifier', 'itemOffered', 'typeOf']);
71
61
  }
72
- const policiesByOffer = yield searchPoliciesByOffer({ offers })(repos);
73
- const { usedReservationExists } = yield checkUsedReservationExists({ orders })(repos);
74
- const { hasMerchantReturnPolicy } = yield repos.project.findById({
62
+ const policiesByOffer = await searchPoliciesByOffer({ offers })(repos);
63
+ const { usedReservationExists } = await checkUsedReservationExists({ orders })(repos);
64
+ const { hasMerchantReturnPolicy } = await repos.project.findById({
75
65
  id: seller.project.id,
76
66
  inclusion: ['hasMerchantReturnPolicy']
77
67
  });
78
- const appliedReturnPolicy = yield (0, findApplicableReturnPolicy_1.findApplicableReturnPolicy)(Object.assign({ acceptedOffers,
68
+ const appliedReturnPolicy = await (0, findApplicableReturnPolicy_1.findApplicableReturnPolicy)({
69
+ acceptedOffers,
79
70
  events,
80
71
  offerItemConditions,
81
- orders, returningDate: now, reason: params.object.reason, returnPolicies,
72
+ orders,
73
+ returningDate: now,
74
+ reason: params.object.reason,
75
+ returnPolicies,
82
76
  offers,
83
77
  policiesByOffer,
84
- usedReservationExists }, (hasMerchantReturnPolicy !== undefined) ? { returnPolicySettingsByProject: hasMerchantReturnPolicy } : undefined));
78
+ usedReservationExists,
79
+ ...(hasMerchantReturnPolicy !== undefined) ? { returnPolicySettingsByProject: hasMerchantReturnPolicy } : undefined
80
+ });
85
81
  validateAppliedReturnPolicy({ merchantReturnPolicy: appliedReturnPolicy });
86
82
  // アイテム検証
87
- yield validateItems({ orders, reason: params.object.reason })({ order: repos.order, reservation: repos.reservation });
83
+ await validateItems({ orders, reason: params.object.reason })({ order: repos.order, reservation: repos.reservation });
88
84
  const transactionObject = {
89
85
  order: orders.map(({ confirmationNumber, orderNumber }) => ({ confirmationNumber, orderNumber })),
90
86
  returnPolicy: appliedReturnPolicy,
@@ -100,10 +96,10 @@ function preStart(params) {
100
96
  throw new factory.errors.ArgumentNull('expiresInSeconds');
101
97
  }
102
98
  return { transactionObject, seller, expiresInSeconds };
103
- });
99
+ };
104
100
  }
105
101
  function fixOrders(params) {
106
- return (repos) => __awaiter(this, void 0, void 0, function* () {
102
+ return async (repos) => {
107
103
  if (!Array.isArray(params.object.order)) {
108
104
  params.object.order = [params.object.order];
109
105
  }
@@ -112,7 +108,7 @@ function fixOrders(params) {
112
108
  throw new factory.errors.Argument('object.order', 'number of orders must be 1');
113
109
  }
114
110
  // 注文数を1に限定であれば、findByConfirmationNumberに変更できる(2022-04-28~)
115
- const orders = yield repos.order.projectFields({
111
+ const orders = await repos.order.projectFields({
116
112
  limit: 1,
117
113
  page: 1,
118
114
  project: { id: { $eq: params.project.id } },
@@ -136,45 +132,45 @@ function fixOrders(params) {
136
132
  if (orders.length !== params.object.order.length) {
137
133
  throw new factory.errors.NotFound('Order');
138
134
  }
139
- const offerIds = yield repos.acceptedOffer.distinctValues({
135
+ const offerIds = await repos.acceptedOffer.distinctValues({
140
136
  orderNumber: { $in: [params.object.order[0].orderNumber] }
141
137
  }, 'acceptedOffers.id');
142
- const eventIds = yield repos.acceptedOffer.distinctValues({
138
+ const eventIds = await repos.acceptedOffer.distinctValues({
143
139
  orderNumber: { $in: [params.object.order[0].orderNumber] }
144
140
  }, 'acceptedOffers.itemOffered.reservationFor.id');
145
141
  // const acceptedOffers = await repos.acceptedOffer.searchAcceptedOffersByOrderNumbers({
146
142
  // orderNumber: { $in: [params.object.order[0].orderNumber] }
147
143
  // });
148
- const acceptedOffers = yield repos.acceptedOffer.searchAcceptedOffersByOrderNumber({
144
+ const acceptedOffers = await repos.acceptedOffer.searchAcceptedOffersByOrderNumber({
149
145
  orderNumber: { $eq: params.object.order[0].orderNumber },
150
146
  project: { id: { $eq: params.project.id } }
151
147
  });
152
148
  return { acceptedOffers, eventIds, offerIds, orders };
153
- });
149
+ };
154
150
  }
155
151
  function validateOrder(__) {
156
- return () => __awaiter(this, void 0, void 0, function* () {
152
+ return async () => {
157
153
  // returnOrderタスクの処理の中でステータス整合性を担保しているので検証不要(2024-01-10~)
158
154
  // 注文ステータスが配送済の場合のみ受け付け
159
155
  // const allOrdersDelivered = params.orders.every((o) => o.orderStatus === factory.orderStatus.OrderDelivered);
160
156
  // if (!allOrdersDelivered) {
161
157
  // throw new factory.errors.Argument('Order Number', 'Invalid Order Status');
162
158
  // }
163
- });
159
+ };
164
160
  }
165
161
  function checkUsedReservationExists(params) {
166
- return (repos) => __awaiter(this, void 0, void 0, function* () {
162
+ return async (repos) => {
167
163
  let usedReservationExists = false;
168
164
  // 注文に含まれる予約の状態検証
169
165
  // const reservationNumbers = await repos.acceptedOffer.searchReservationNumbersByOrderNumbers({
170
166
  // orderNumber: { $in: params.orders.map((order) => order.orderNumber) }
171
167
  // });
172
- const reservationNumbers = yield repos.acceptedOffer.distinctValues({
168
+ const reservationNumbers = await repos.acceptedOffer.distinctValues({
173
169
  orderNumber: { $in: params.orders.map((order) => order.orderNumber) }
174
170
  }, 'acceptedOffers.itemOffered.reservationNumber');
175
171
  if (reservationNumbers.length > 0) {
176
172
  // 使用済の予約がひとつでもあれば不可
177
- const existingUsedReservations = yield repos.reservation.projectFields({
173
+ const existingUsedReservations = await repos.reservation.projectFields({
178
174
  limit: 1,
179
175
  page: 1,
180
176
  typeOf: factory.reservationType.EventReservation,
@@ -186,10 +182,10 @@ function checkUsedReservationExists(params) {
186
182
  }
187
183
  }
188
184
  return { usedReservationExists };
189
- });
185
+ };
190
186
  }
191
187
  function validateItems(params) {
192
- return (__) => __awaiter(this, void 0, void 0, function* () {
188
+ return async (__) => {
193
189
  if (params.reason === factory.transaction.returnOrder.Reason.Seller) {
194
190
  // 販売者都合の場合、特に検証しない
195
191
  return;
@@ -212,10 +208,10 @@ function validateItems(params) {
212
208
  // throw new factory.errors.Argument('orderNumber', 'some reservations already used');
213
209
  // }
214
210
  // }
215
- });
211
+ };
216
212
  }
217
213
  function searchPoliciesByOffer(params) {
218
- return (repos) => __awaiter(this, void 0, void 0, function* () {
214
+ return async (repos) => {
219
215
  let merchantReturnPolicyIds = [];
220
216
  params.offers.forEach((offer) => {
221
217
  if (Array.isArray(offer.hasMerchantReturnPolicy) && offer.hasMerchantReturnPolicy.length > 0) {
@@ -225,7 +221,7 @@ function searchPoliciesByOffer(params) {
225
221
  merchantReturnPolicyIds = [...new Set(merchantReturnPolicyIds)];
226
222
  let policiesByOffer = [];
227
223
  if (merchantReturnPolicyIds.length > 0) {
228
- policiesByOffer = yield repos.merchantReturnPolicy.search({
224
+ policiesByOffer = await repos.merchantReturnPolicy.search({
229
225
  id: { $in: merchantReturnPolicyIds }
230
226
  });
231
227
  }
@@ -233,10 +229,9 @@ function searchPoliciesByOffer(params) {
233
229
  throw new factory.errors.NotFound('MerchantReturnPolicy with offers');
234
230
  }
235
231
  return policiesByOffer;
236
- });
232
+ };
237
233
  }
238
234
  function validateAppliedReturnPolicy(params) {
239
- var _a;
240
235
  const appliedReturnPolicy = params.merchantReturnPolicy;
241
236
  switch (appliedReturnPolicy.returnFees) {
242
237
  case factory.merchantReturnPolicy.ReturnFeesEnumeration.RestockingFees:
@@ -245,7 +240,7 @@ function validateAppliedReturnPolicy(params) {
245
240
  throw new factory.errors.NotImplemented('restockingFee in type of number not implemented');
246
241
  }
247
242
  else {
248
- const returnFeeByPolicy = (_a = appliedReturnPolicy.restockingFee) === null || _a === void 0 ? void 0 : _a.value;
243
+ const returnFeeByPolicy = appliedReturnPolicy.restockingFee?.value;
249
244
  if (typeof returnFeeByPolicy !== 'number') {
250
245
  throw new factory.errors.NotFound('appliedReturnPolicy.restockingFee.value');
251
246
  }
@@ -1,13 +1,4 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  exports.preStart = void 0;
13
4
  exports.start = start;
@@ -27,8 +18,8 @@ const errorHandler_1 = require("../../errorHandler");
27
18
  * 返品取引開始
28
19
  */
29
20
  function start(params) {
30
- return (repos) => __awaiter(this, void 0, void 0, function* () {
31
- const { transactionObject, expiresInSeconds, seller } = yield (0, preStart_1.preStart)(params)(repos);
21
+ return async (repos) => {
22
+ const { transactionObject, expiresInSeconds, seller } = await (0, preStart_1.preStart)(params)(repos);
32
23
  const returnOrderAttributes = {
33
24
  project: params.project,
34
25
  typeOf: factory.transactionType.ReturnOrder,
@@ -43,12 +34,11 @@ function start(params) {
43
34
  };
44
35
  let returnOrderTransaction;
45
36
  try {
46
- returnOrderTransaction = yield repos.transaction.start(returnOrderAttributes);
37
+ returnOrderTransaction = await repos.transaction.start(returnOrderAttributes);
47
38
  }
48
39
  catch (error) {
49
- if (yield (0, errorHandler_1.isMongoError)(error)) {
40
+ if (await (0, errorHandler_1.isMongoError)(error)) {
50
41
  // 同一取引に対して返品取引を作成しようとすると、MongoDBでE11000 duplicate key errorが発生する
51
- // tslint:disable-next-line:no-single-line-block-comment
52
42
  /* istanbul ignore else */
53
43
  if (error.code === errorHandler_1.MongoErrorCode.DuplicateKey) {
54
44
  throw new factory.errors.Argument('orderNumber', 'Already returned');
@@ -57,10 +47,10 @@ function start(params) {
57
47
  throw error;
58
48
  }
59
49
  return returnOrderTransaction;
60
- });
50
+ };
61
51
  }
62
52
  function saveMessagesIfNeeded(params) {
63
- return (repos) => __awaiter(this, void 0, void 0, function* () {
53
+ return async (repos) => {
64
54
  const { project, order, emailMessages, seller } = params;
65
55
  if (emailMessages.length > 0) {
66
56
  const { orderNumber } = order;
@@ -75,7 +65,7 @@ function saveMessagesIfNeeded(params) {
75
65
  // })
76
66
  // );
77
67
  for (const { identifier, name, about, text, toRecipient, sender } of emailMessages) {
78
- yield repos.message.upsertOneByIdentifier({
68
+ await repos.message.upsertOneByIdentifier({
79
69
  identifier, name, about, text, toRecipient, sender,
80
70
  project: { id: project.id, typeOf: factory.organizationType.Project },
81
71
  provider: { id: seller.id, typeOf: factory.organizationType.Corporation },
@@ -83,17 +73,16 @@ function saveMessagesIfNeeded(params) {
83
73
  });
84
74
  }
85
75
  }
86
- });
76
+ };
87
77
  }
88
78
  /**
89
79
  * 取引確定
90
80
  */
91
81
  function confirm(params) {
92
- return (repos
82
+ return async (repos
93
83
  // settings: Settings
94
- ) => __awaiter(this, void 0, void 0, function* () {
95
- var _a;
96
- const transaction = yield repos.transaction.projectFieldsById({ typeOf: factory.transactionType.ReturnOrder, id: params.id }, ['typeOf', 'status', 'project', 'agent', 'object', 'result']);
84
+ ) => {
85
+ const transaction = await repos.transaction.projectFieldsById({ typeOf: factory.transactionType.ReturnOrder, id: params.id }, ['typeOf', 'status', 'project', 'agent', 'object', 'result']);
97
86
  if (transaction.status === factory.transactionStatusType.Confirmed) {
98
87
  // すでに確定済の場合
99
88
  return transaction.result;
@@ -104,14 +93,14 @@ function confirm(params) {
104
93
  else if (transaction.status === factory.transactionStatusType.Canceled) {
105
94
  throw new factory.errors.Argument('transaction', 'Transaction already canceled');
106
95
  }
107
- if (typeof ((_a = params.agent) === null || _a === void 0 ? void 0 : _a.id) === 'string' && transaction.agent.id !== params.agent.id) {
96
+ if (typeof params.agent?.id === 'string' && transaction.agent.id !== params.agent.id) {
108
97
  throw new factory.errors.Forbidden('Transaction not yours');
109
98
  }
110
99
  // ひとまず同時返品可能な注文数を1に限定(2022-04-28~)
111
100
  if (transaction.object.order.length !== 1) {
112
101
  throw new factory.errors.Argument('object.order', 'number of orders must be 1');
113
102
  }
114
- const returningOrders = yield repos.order.projectFields({
103
+ const returningOrders = await repos.order.projectFields({
115
104
  limit: 1,
116
105
  page: 1,
117
106
  project: { id: { $eq: transaction.project.id } },
@@ -126,7 +115,7 @@ function confirm(params) {
126
115
  // デフォルトEメールメッセージを検索
127
116
  let emailMessageOnOrderReturned;
128
117
  if (repos.emailMessage !== undefined) {
129
- const searchEmailMessagesResult = yield repos.emailMessage.search({
118
+ const searchEmailMessagesResult = await repos.emailMessage.search({
130
119
  limit: 1,
131
120
  page: 1,
132
121
  project: { id: { $eq: transaction.project.id } },
@@ -134,27 +123,33 @@ function confirm(params) {
134
123
  });
135
124
  emailMessageOnOrderReturned = searchEmailMessagesResult.shift();
136
125
  }
137
- const setting = yield repos.setting.findOne({ project: { id: { $eq: '*' } } }, ['defaultSenderEmail']);
138
- if (typeof (setting === null || setting === void 0 ? void 0 : setting.defaultSenderEmail) !== 'string') {
126
+ const setting = await repos.setting.findOne({ project: { id: { $eq: '*' } } }, ['defaultSenderEmail']);
127
+ if (typeof setting?.defaultSenderEmail !== 'string') {
139
128
  throw new factory.errors.NotFound('setting.defaultSenderEmail');
140
129
  }
141
130
  const result = {};
142
- const { emailMessages, potentialActions } = yield (0, potentialActions_1.createPotentialActions)(Object.assign(Object.assign({ dateReturned: params.object.order.dateReturned, orders: returningOrders, transaction: transaction }, (params.potentialActions !== undefined) ? { potentialActions: params.potentialActions } : undefined), (emailMessageOnOrderReturned !== undefined) ? { emailMessageOnOrderReturned } : undefined),
131
+ const { emailMessages, potentialActions } = await (0, potentialActions_1.createPotentialActions)({
132
+ dateReturned: params.object.order.dateReturned,
133
+ orders: returningOrders,
134
+ transaction: transaction,
135
+ ...(params.potentialActions !== undefined) ? { potentialActions: params.potentialActions } : undefined,
136
+ ...(emailMessageOnOrderReturned !== undefined) ? { emailMessageOnOrderReturned } : undefined
137
+ },
143
138
  // settings
144
139
  setting);
145
140
  // save messages(2024-06-27~)
146
- yield saveMessagesIfNeeded({
141
+ await saveMessagesIfNeeded({
147
142
  project: { id: transaction.project.id },
148
143
  order: { orderNumber: returningOrders[0].orderNumber }, seller: { id: returningOrders[0].seller.id }, emailMessages
149
144
  })(repos);
150
145
  // ステータス変更
151
- yield repos.transaction.confirm({
146
+ await repos.transaction.confirm({
152
147
  typeOf: transaction.typeOf,
153
148
  id: transaction.id,
154
149
  result, potentialActions
155
150
  });
156
151
  return result;
157
- });
152
+ };
158
153
  }
159
154
  /**
160
155
  * 取引のタスクを出力します
@@ -162,10 +157,10 @@ function confirm(params) {
162
157
  * この関数では、取引のタスクエクスポートステータスは見ません
163
158
  */
164
159
  function exportTasksById(params) {
165
- return (repos
160
+ return async (repos
166
161
  // settings: Settings
167
- ) => __awaiter(this, void 0, void 0, function* () {
168
- const transaction = yield repos.transaction.projectFieldsById({ typeOf: factory.transactionType.ReturnOrder, id: params.id }, ['typeOf', 'status', 'project', 'endDate', 'startDate', 'object', 'potentialActions']);
162
+ ) => {
163
+ const transaction = await repos.transaction.projectFieldsById({ typeOf: factory.transactionType.ReturnOrder, id: params.id }, ['typeOf', 'status', 'project', 'endDate', 'startDate', 'object', 'potentialActions']);
169
164
  // タスク実行日時バッファの指定があれば調整
170
165
  let taskRunsAt = new Date();
171
166
  if (typeof params.runsTasksAfterInSeconds === 'number') {
@@ -174,13 +169,13 @@ function exportTasksById(params) {
174
169
  .toDate();
175
170
  }
176
171
  // search settings
177
- const setting = yield repos.setting.findOne({ project: { id: { $eq: '*' } } }, ['storage']);
172
+ const setting = await repos.setting.findOne({ project: { id: { $eq: '*' } } }, ['storage']);
178
173
  const taskAttributes = (0, factory_1.createTasks)({
179
174
  transaction,
180
175
  runsAt: taskRunsAt
181
176
  }, setting
182
177
  // settings
183
178
  );
184
- yield repos.task.saveMany(taskAttributes, { emitImmediately: true });
185
- });
179
+ await repos.task.saveMany(taskAttributes, { emitImmediately: true });
180
+ };
186
181
  }