@chevre/domain 24.0.0-alpha.5 → 24.0.0-alpha.52

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 (521) 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/pay.d.ts +25 -0
  26. package/lib/chevre/repo/action/pay.js +54 -0
  27. package/lib/chevre/repo/action/refund.d.ts +9 -0
  28. package/lib/chevre/repo/action/refund.js +13 -0
  29. package/lib/chevre/repo/action.d.ts +25 -278
  30. package/lib/chevre/repo/action.js +357 -1245
  31. package/lib/chevre/repo/additionalProperty.js +2 -2
  32. package/lib/chevre/repo/advanceBookingRequirement.d.ts +1 -3
  33. package/lib/chevre/repo/advanceBookingRequirement.js +2 -2
  34. package/lib/chevre/repo/aggregateAction.d.ts +102 -0
  35. package/lib/chevre/repo/aggregateAction.js +378 -0
  36. package/lib/chevre/repo/aggregateOffer.d.ts +12 -12
  37. package/lib/chevre/repo/aggregateOffer.js +4 -3
  38. package/lib/chevre/repo/assetTransaction/reserve.d.ts +30 -0
  39. package/lib/chevre/repo/assetTransaction/reserve.js +126 -0
  40. package/lib/chevre/repo/assetTransaction.d.ts +47 -26
  41. package/lib/chevre/repo/assetTransaction.js +13 -6
  42. package/lib/chevre/repo/categoryCode.d.ts +9 -6
  43. package/lib/chevre/repo/categoryCode.js +2 -2
  44. package/lib/chevre/repo/comment.d.ts +7 -3
  45. package/lib/chevre/repo/creativeWork.d.ts +10 -9
  46. package/lib/chevre/repo/creativeWork.js +4 -3
  47. package/lib/chevre/repo/customer.d.ts +8 -3
  48. package/lib/chevre/repo/customer.js +2 -2
  49. package/lib/chevre/repo/customerType.d.ts +1 -1
  50. package/lib/chevre/repo/customerType.js +1 -0
  51. package/lib/chevre/repo/emailMessage.js +1 -1
  52. package/lib/chevre/repo/event.d.ts +12 -24
  53. package/lib/chevre/repo/event.js +32 -27
  54. package/lib/chevre/repo/eventOffer.d.ts +3 -3
  55. package/lib/chevre/repo/eventOffer.js +1 -0
  56. package/lib/chevre/repo/eventSellerMakesOffer.d.ts +3 -3
  57. package/lib/chevre/repo/eventSellerMakesOffer.js +1 -0
  58. package/lib/chevre/repo/eventSeries.d.ts +11 -5
  59. package/lib/chevre/repo/eventSeries.js +2 -2
  60. package/lib/chevre/repo/factory/reservation/createMongoConditions.d.ts +3 -0
  61. package/lib/chevre/repo/factory/reservation/createMongoConditions.js +771 -0
  62. package/lib/chevre/repo/identity.d.ts +13 -6
  63. package/lib/chevre/repo/identityProvider.d.ts +8 -21
  64. package/lib/chevre/repo/identityProvider.js +2 -2
  65. package/lib/chevre/repo/issuer.d.ts +8 -8
  66. package/lib/chevre/repo/issuer.js +3 -3
  67. package/lib/chevre/repo/member.d.ts +7 -3
  68. package/lib/chevre/repo/merchantReturnPolicy.d.ts +7 -3
  69. package/lib/chevre/repo/merchantReturnPolicy.js +1 -1
  70. package/lib/chevre/repo/message.js +1 -1
  71. package/lib/chevre/repo/mongoose/schemas/acceptedPaymentMethod.d.ts +4 -3
  72. package/lib/chevre/repo/mongoose/schemas/account.d.ts +4 -3
  73. package/lib/chevre/repo/mongoose/schemas/accountTitle.d.ts +4 -3
  74. package/lib/chevre/repo/mongoose/schemas/accountTransaction.d.ts +5 -4
  75. package/lib/chevre/repo/mongoose/schemas/accountingReport.d.ts +3 -2
  76. package/lib/chevre/repo/mongoose/schemas/action.d.ts +4 -3
  77. package/lib/chevre/repo/mongoose/schemas/actionRecipe.d.ts +4 -3
  78. package/lib/chevre/repo/mongoose/schemas/additionalProperty.d.ts +5 -4
  79. package/lib/chevre/repo/mongoose/schemas/advanceBookingRequirement.d.ts +3 -2
  80. package/lib/chevre/repo/mongoose/schemas/aggregateOffer.d.ts +4 -3
  81. package/lib/chevre/repo/mongoose/schemas/aggregateOrder.d.ts +3 -2
  82. package/lib/chevre/repo/mongoose/schemas/aggregateReservation.d.ts +4 -3
  83. package/lib/chevre/repo/mongoose/schemas/aggregation.d.ts +4 -3
  84. package/lib/chevre/repo/mongoose/schemas/assetTransaction.d.ts +4 -3
  85. package/lib/chevre/repo/mongoose/schemas/authorization.d.ts +4 -3
  86. package/lib/chevre/repo/mongoose/schemas/categoryCode.d.ts +5 -4
  87. package/lib/chevre/repo/mongoose/schemas/civicStructure.d.ts +3 -2
  88. package/lib/chevre/repo/mongoose/schemas/comments.d.ts +4 -3
  89. package/lib/chevre/repo/mongoose/schemas/creativeWork.d.ts +5 -4
  90. package/lib/chevre/repo/mongoose/schemas/customer.d.ts +5 -4
  91. package/lib/chevre/repo/mongoose/schemas/customerType.d.ts +5 -4
  92. package/lib/chevre/repo/mongoose/schemas/emailMessages.d.ts +4 -3
  93. package/lib/chevre/repo/mongoose/schemas/event.d.ts +3 -2
  94. package/lib/chevre/repo/mongoose/schemas/eventOffer.d.ts +4 -3
  95. package/lib/chevre/repo/mongoose/schemas/eventSeries.d.ts +3 -2
  96. package/lib/chevre/repo/mongoose/schemas/identity.d.ts +4 -3
  97. package/lib/chevre/repo/mongoose/schemas/identityProvider.d.ts +4 -3
  98. package/lib/chevre/repo/mongoose/schemas/issuer.d.ts +4 -3
  99. package/lib/chevre/repo/mongoose/schemas/member/global.d.ts +4 -3
  100. package/lib/chevre/repo/mongoose/schemas/member.d.ts +4 -3
  101. package/lib/chevre/repo/mongoose/schemas/merchantReturnPolicy.d.ts +4 -3
  102. package/lib/chevre/repo/mongoose/schemas/message.d.ts +5 -4
  103. package/lib/chevre/repo/mongoose/schemas/movieTicketTypes.d.ts +4 -3
  104. package/lib/chevre/repo/mongoose/schemas/note.d.ts +3 -2
  105. package/lib/chevre/repo/mongoose/schemas/offerCatalog.d.ts +4 -3
  106. package/lib/chevre/repo/mongoose/schemas/offerCatalogItem.d.ts +4 -3
  107. package/lib/chevre/repo/mongoose/schemas/offerItemCondition.d.ts +5 -4
  108. package/lib/chevre/repo/mongoose/schemas/order.d.ts +4 -3
  109. package/lib/chevre/repo/mongoose/schemas/ownershipInfo.d.ts +6 -5
  110. package/lib/chevre/repo/mongoose/schemas/ownershipInfo.js +78 -71
  111. package/lib/chevre/repo/mongoose/schemas/paymentService.d.ts +4 -3
  112. package/lib/chevre/repo/mongoose/schemas/paymentServiceChannel.d.ts +4 -3
  113. package/lib/chevre/repo/mongoose/schemas/pendingReservation.d.ts +4 -3
  114. package/lib/chevre/repo/mongoose/schemas/pendingReservationAggregate.d.ts +4 -3
  115. package/lib/chevre/repo/mongoose/schemas/place.d.ts +3 -2
  116. package/lib/chevre/repo/mongoose/schemas/potentialAction.d.ts +4 -3
  117. package/lib/chevre/repo/mongoose/schemas/priceSpecification.d.ts +6 -3
  118. package/lib/chevre/repo/mongoose/schemas/product.d.ts +4 -3
  119. package/lib/chevre/repo/mongoose/schemas/productModel.d.ts +6 -5
  120. package/lib/chevre/repo/mongoose/schemas/productOffer.d.ts +3 -2
  121. package/lib/chevre/repo/mongoose/schemas/project.d.ts +4 -3
  122. package/lib/chevre/repo/mongoose/schemas/reservation.d.ts +5 -4
  123. package/lib/chevre/repo/mongoose/schemas/reserveInterface.d.ts +4 -3
  124. package/lib/chevre/repo/mongoose/schemas/role.d.ts +3 -2
  125. package/lib/chevre/repo/mongoose/schemas/schedule.d.ts +5 -4
  126. package/lib/chevre/repo/mongoose/schemas/seller.d.ts +4 -3
  127. package/lib/chevre/repo/mongoose/schemas/sellerReturnPolicy.d.ts +4 -3
  128. package/lib/chevre/repo/mongoose/schemas/service/availableHour.d.ts +3 -2
  129. package/lib/chevre/repo/mongoose/schemas/serviceOutput.d.ts +5 -4
  130. package/lib/chevre/repo/mongoose/schemas/setting.d.ts +4 -3
  131. package/lib/chevre/repo/mongoose/schemas/task.d.ts +4 -3
  132. package/lib/chevre/repo/mongoose/schemas/task.js +1 -0
  133. package/lib/chevre/repo/mongoose/schemas/ticket.d.ts +4 -3
  134. package/lib/chevre/repo/mongoose/schemas/transaction.d.ts +7 -4
  135. package/lib/chevre/repo/mongoose/schemas/transaction.js +31 -0
  136. package/lib/chevre/repo/mongoose/schemas/transactionNumber.d.ts +3 -2
  137. package/lib/chevre/repo/mongoose/schemas/trip.d.ts +4 -3
  138. package/lib/chevre/repo/mongoose/schemas/webSite.d.ts +4 -3
  139. package/lib/chevre/repo/mongoose/virtuals.d.ts +3 -0
  140. package/lib/chevre/repo/mongoose/virtuals.js +2 -0
  141. package/lib/chevre/repo/movieTicketType.d.ts +3 -4
  142. package/lib/chevre/repo/movieTicketType.js +2 -2
  143. package/lib/chevre/repo/note.d.ts +3 -3
  144. package/lib/chevre/repo/note.js +1 -0
  145. package/lib/chevre/repo/noteAboutOrder.d.ts +1 -1
  146. package/lib/chevre/repo/noteAboutOrder.js +1 -0
  147. package/lib/chevre/repo/offer/offerInCatalogReadOnly.d.ts +1 -3
  148. package/lib/chevre/repo/offer/unitPriceInCatalog.d.ts +1 -3
  149. package/lib/chevre/repo/offerCatalog.d.ts +11 -7
  150. package/lib/chevre/repo/offerCatalog.js +6 -4
  151. package/lib/chevre/repo/offerCatalogItem.d.ts +3 -3
  152. package/lib/chevre/repo/offerCatalogItem.js +5 -4
  153. package/lib/chevre/repo/offerItemCondition.js +2 -2
  154. package/lib/chevre/repo/order.d.ts +8 -7
  155. package/lib/chevre/repo/order.js +3 -1
  156. package/lib/chevre/repo/orderInTransaction.d.ts +8 -0
  157. package/lib/chevre/repo/orderInTransaction.js +16 -2
  158. package/lib/chevre/repo/orderNumber.d.ts +3 -2
  159. package/lib/chevre/repo/orderNumber.js +23 -28
  160. package/lib/chevre/repo/ownershipInfo.d.ts +15 -8
  161. package/lib/chevre/repo/ownershipInfo.js +13 -10
  162. package/lib/chevre/repo/passport.d.ts +1 -1
  163. package/lib/chevre/repo/passport.js +1 -1
  164. package/lib/chevre/repo/paymentService.d.ts +3 -18
  165. package/lib/chevre/repo/paymentService.js +7 -7
  166. package/lib/chevre/repo/paymentServiceChannel.d.ts +1 -3
  167. package/lib/chevre/repo/paymentServiceChannel.js +2 -2
  168. package/lib/chevre/repo/pendingReservation.js +0 -1
  169. package/lib/chevre/repo/person.js +2 -2
  170. package/lib/chevre/repo/place/busStop.js +1 -1
  171. package/lib/chevre/repo/place/hasPOS.js +3 -3
  172. package/lib/chevre/repo/place/movieTheater.d.ts +7 -3
  173. package/lib/chevre/repo/place/movieTheater.js +10 -4
  174. package/lib/chevre/repo/place/screeningRoom.d.ts +7 -3
  175. package/lib/chevre/repo/place/screeningRoom.js +2 -2
  176. package/lib/chevre/repo/place/seat.d.ts +25 -21
  177. package/lib/chevre/repo/place/seat.js +15 -0
  178. package/lib/chevre/repo/place/section.js +6 -0
  179. package/lib/chevre/repo/potentialAction.d.ts +8 -29
  180. package/lib/chevre/repo/potentialAction.js +2 -2
  181. package/lib/chevre/repo/priceSpecification.d.ts +51 -24
  182. package/lib/chevre/repo/priceSpecification.js +11 -15
  183. package/lib/chevre/repo/product.d.ts +13 -13
  184. package/lib/chevre/repo/product.js +4 -3
  185. package/lib/chevre/repo/productModel.d.ts +3 -1
  186. package/lib/chevre/repo/productModel.js +17 -13
  187. package/lib/chevre/repo/productOffer.d.ts +3 -3
  188. package/lib/chevre/repo/productOffer.js +1 -0
  189. package/lib/chevre/repo/project.d.ts +8 -11
  190. package/lib/chevre/repo/rateLimit/offer.js +1 -1
  191. package/lib/chevre/repo/reservation.d.ts +43 -46
  192. package/lib/chevre/repo/reservation.js +9 -765
  193. package/lib/chevre/repo/reserveInterface.js +4 -4
  194. package/lib/chevre/repo/role.d.ts +39 -3
  195. package/lib/chevre/repo/schedule.js +1 -1
  196. package/lib/chevre/repo/seller.d.ts +9 -56
  197. package/lib/chevre/repo/seller.js +2 -2
  198. package/lib/chevre/repo/sellerMakesOffer.d.ts +2 -2
  199. package/lib/chevre/repo/sellerMakesOffer.js +2 -0
  200. package/lib/chevre/repo/sellerReturnPolicy.d.ts +1 -3
  201. package/lib/chevre/repo/sellerReturnPolicy.js +2 -2
  202. package/lib/chevre/repo/task.d.ts +8 -68
  203. package/lib/chevre/repo/task.js +1 -1
  204. package/lib/chevre/repo/transaction/placeOrder.d.ts +140 -0
  205. package/lib/chevre/repo/transaction/placeOrder.js +528 -0
  206. package/lib/chevre/repo/transaction/returnOrder.d.ts +45 -0
  207. package/lib/chevre/repo/transaction/returnOrder.js +341 -0
  208. package/lib/chevre/repo/transaction.d.ts +71 -142
  209. package/lib/chevre/repo/transaction.js +727 -632
  210. package/lib/chevre/repo/transactionProcess.js +1 -1
  211. package/lib/chevre/repo/trip.d.ts +4 -12
  212. package/lib/chevre/repo/trip.js +3 -3
  213. package/lib/chevre/repo/webSite.d.ts +1 -3
  214. package/lib/chevre/repo/webSite.js +3 -2
  215. package/lib/chevre/repository.d.ts +81 -5
  216. package/lib/chevre/repository.js +176 -13
  217. package/lib/chevre/service/aggregation/system.d.ts +10 -10
  218. package/lib/chevre/service/aggregation/system.js +9 -9
  219. package/lib/chevre/service/assetTransaction/cancelReservation/factory.d.ts +2 -2
  220. package/lib/chevre/service/assetTransaction/cancelReservation/factory.js +1 -17
  221. package/lib/chevre/service/assetTransaction/cancelReservation/start.d.ts +2 -2
  222. package/lib/chevre/service/assetTransaction/cancelReservation/start.js +1 -1
  223. package/lib/chevre/service/assetTransaction/moneyTransfer.js +8 -5
  224. package/lib/chevre/service/assetTransaction/pay/check.d.ts +5 -4
  225. package/lib/chevre/service/assetTransaction/pay/confirm.d.ts +1 -1
  226. package/lib/chevre/service/assetTransaction/pay/exportTasksById.js +2 -1
  227. package/lib/chevre/service/assetTransaction/pay/publishPaymentUrl.d.ts +9 -4
  228. package/lib/chevre/service/assetTransaction/pay/publishPaymentUrl.js +5 -4
  229. package/lib/chevre/service/assetTransaction/pay/start/factory.js +2 -1
  230. package/lib/chevre/service/assetTransaction/pay/start/preStart/validateAcceptedPaymentMethodIfNeeded.d.ts +4 -7
  231. package/lib/chevre/service/assetTransaction/pay/start/preStart/validateAcceptedPaymentMethodIfNeeded.js +258 -39
  232. package/lib/chevre/service/assetTransaction/pay/start/processAuthorize.d.ts +11 -2
  233. package/lib/chevre/service/assetTransaction/pay/start/processAuthorizeCreditCard.d.ts +2 -2
  234. package/lib/chevre/service/assetTransaction/pay/start/processAuthorizeMovieTicket.d.ts +9 -2
  235. package/lib/chevre/service/assetTransaction/pay/start.d.ts +13 -2
  236. package/lib/chevre/service/assetTransaction/refund.d.ts +5 -2
  237. package/lib/chevre/service/assetTransaction/refund.js +1 -1
  238. package/lib/chevre/service/assetTransaction/reserve/confirm/factory.d.ts +1 -1
  239. package/lib/chevre/service/assetTransaction/reserve/start/createSubReservations.js +6 -3
  240. package/lib/chevre/service/assetTransaction/reserve/start/factory/createReservation.d.ts +4 -7
  241. package/lib/chevre/service/assetTransaction/reserve/start/factory/createReservation.js +1 -41
  242. package/lib/chevre/service/assetTransaction/reserve/start/factory/createStartParams.js +3 -15
  243. package/lib/chevre/service/assetTransaction/reserve/start/factory/price.d.ts +1 -1
  244. package/lib/chevre/service/assetTransaction/reserve/start.js +6 -7
  245. package/lib/chevre/service/assetTransaction/reserveCOA/cancel.d.ts +19 -4
  246. package/lib/chevre/service/assetTransaction/reserveCOA/cancel.js +7 -1
  247. package/lib/chevre/service/assetTransaction.d.ts +1 -1
  248. package/lib/chevre/service/delivery/factory.js +44 -40
  249. package/lib/chevre/service/delivery/product/factory.js +2 -4
  250. package/lib/chevre/service/delivery/reservation/factory.js +17 -22
  251. package/lib/chevre/service/event/saveScreeningEvents.js +2 -2
  252. package/lib/chevre/service/event.js +1 -1
  253. package/lib/chevre/service/notification/notifyByEmail.d.ts +1 -1
  254. package/lib/chevre/service/notification/triggerWebhook.d.ts +7 -6
  255. package/lib/chevre/service/notification/triggerWebhook.js +1 -1
  256. package/lib/chevre/service/offer/any.d.ts +1 -1
  257. package/lib/chevre/service/offer/event/authorize/factory.d.ts +1 -1
  258. package/lib/chevre/service/offer/event/authorize/factory.js +18 -58
  259. package/lib/chevre/service/offer/event/authorize/processStartReserve4chevre.d.ts +1 -3
  260. package/lib/chevre/service/offer/event/authorize.d.ts +6 -5
  261. package/lib/chevre/service/offer/event/authorize.js +27 -25
  262. package/lib/chevre/service/offer/event/issueEventOfferTicket.d.ts +17 -15
  263. package/lib/chevre/service/offer/event/issueEventOfferTicket.js +4 -4
  264. package/lib/chevre/service/offer/event/searchEventTicketOffers.js +2 -1
  265. package/lib/chevre/service/offer/event/searchOffersByIds.js +2 -1
  266. package/lib/chevre/service/offer/event/voidTransaction/processVoidTransaction4chevre.d.ts +0 -2
  267. package/lib/chevre/service/offer/event/voidTransaction/processVoidTransaction4chevre.js +1 -0
  268. package/lib/chevre/service/offer/event/voidTransaction/processVoidTransaction4coa.d.ts +2 -0
  269. package/lib/chevre/service/offer/event/voidTransaction.d.ts +10 -3
  270. package/lib/chevre/service/offer/event/voidTransaction.js +20 -16
  271. package/lib/chevre/service/offer/event/voidTransactionByActionId.d.ts +8 -3
  272. package/lib/chevre/service/offer/event/voidTransactionByActionId.js +6 -5
  273. package/lib/chevre/service/offer/eventServiceByCOA/acceptOffer.d.ts +16 -5
  274. package/lib/chevre/service/offer/eventServiceByCOA/acceptOffer.js +7 -7
  275. package/lib/chevre/service/offer/eventServiceByCOA/authorize/factory.d.ts +1 -1
  276. package/lib/chevre/service/offer/eventServiceByCOA/authorize/factory.js +21 -36
  277. package/lib/chevre/service/offer/eventServiceByCOA/authorize.d.ts +7 -5
  278. package/lib/chevre/service/offer/eventServiceByCOA/authorize.js +3 -10
  279. package/lib/chevre/service/offer/eventServiceByCOA/authorizeByAcceptAction.js +21 -13
  280. package/lib/chevre/service/offer/eventServiceByCOA/changeOffers.d.ts +1 -1
  281. package/lib/chevre/service/offer/eventServiceByCOA/changeOffers.js +19 -10
  282. package/lib/chevre/service/offer/eventServiceByCOA/findAcceptAction.d.ts +2 -2
  283. package/lib/chevre/service/offer/eventServiceByCOA/findAcceptAction.js +2 -1
  284. package/lib/chevre/service/offer/product/factory.d.ts +5 -5
  285. package/lib/chevre/service/offer/product/factory.js +13 -5
  286. package/lib/chevre/service/offer/product.d.ts +9 -7
  287. package/lib/chevre/service/offer/product.js +21 -17
  288. package/lib/chevre/service/offer.d.ts +1 -2
  289. package/lib/chevre/service/offer.js +11 -9
  290. package/lib/chevre/service/order/confirmPayTransaction.d.ts +1 -3
  291. package/lib/chevre/service/order/confirmPayTransaction.js +1 -0
  292. package/lib/chevre/service/order/deleteOrder.js +2 -2
  293. package/lib/chevre/service/order/findPlaceOrderTransaction.d.ts +2 -2
  294. package/lib/chevre/service/order/findPlaceOrderTransaction.js +1 -1
  295. package/lib/chevre/service/order/onAssetTransactionStatusChanged/isDeliverable.d.ts +16 -0
  296. package/lib/chevre/service/order/onAssetTransactionStatusChanged/isDeliverable.js +97 -0
  297. package/lib/chevre/service/order/onAssetTransactionStatusChanged/onPayTransactionCanceled.d.ts +21 -0
  298. package/lib/chevre/service/order/onAssetTransactionStatusChanged/onPayTransactionCanceled.js +86 -0
  299. package/lib/chevre/service/order/onAssetTransactionStatusChanged/onPayTransactionConfirmed.d.ts +22 -0
  300. package/lib/chevre/service/order/onAssetTransactionStatusChanged/onPayTransactionConfirmed.js +112 -0
  301. package/lib/chevre/service/order/onAssetTransactionStatusChanged/onReserveTransactionConfirmed.d.ts +22 -0
  302. package/lib/chevre/service/order/onAssetTransactionStatusChanged/onReserveTransactionConfirmed.js +74 -0
  303. package/lib/chevre/service/order/onAssetTransactionStatusChanged/paymentDue2Processing.d.ts +25 -0
  304. package/lib/chevre/service/order/onAssetTransactionStatusChanged/paymentDue2Processing.js +111 -0
  305. package/lib/chevre/service/order/onAssetTransactionStatusChanged/processing2inTransit.d.ts +16 -0
  306. package/lib/chevre/service/order/onAssetTransactionStatusChanged/processing2inTransit.js +74 -0
  307. package/lib/chevre/service/order/onAssetTransactionStatusChanged.d.ts +8 -30
  308. package/lib/chevre/service/order/onAssetTransactionStatusChanged.js +39 -349
  309. package/lib/chevre/service/order/onOrderStatusChanged/onOrderCancelled/factory.d.ts +1 -1
  310. package/lib/chevre/service/order/onOrderStatusChanged/onOrderDelivered.d.ts +6 -7
  311. package/lib/chevre/service/order/onOrderStatusChanged/onOrderDeliveredPartially/factory.d.ts +1 -1
  312. package/lib/chevre/service/order/onOrderStatusChanged/onOrderDeliveredPartially.d.ts +6 -5
  313. package/lib/chevre/service/order/onOrderStatusChanged/onOrderInTransit.d.ts +7 -6
  314. package/lib/chevre/service/order/onOrderStatusChanged/onOrderInTransit.js +1 -1
  315. package/lib/chevre/service/order/onOrderStatusChanged/onOrderProcessing/processOrder.js +54 -37
  316. package/lib/chevre/service/order/onOrderStatusChanged/onOrderReturned/factory.d.ts +1 -1
  317. package/lib/chevre/service/order/onOrderStatusChanged/onOrderReturned.js +82 -66
  318. package/lib/chevre/service/order/payOrder.d.ts +2 -2
  319. package/lib/chevre/service/order/placeOrder/createPlacingOrderFromExistingTransaction.d.ts +12 -8
  320. package/lib/chevre/service/order/placeOrder/createPlacingOrderFromExistingTransaction.js +41 -26
  321. package/lib/chevre/service/order/placeOrder/factory/orderedItem.d.ts +0 -1
  322. package/lib/chevre/service/order/placeOrder/factory/orderedItem.js +3 -28
  323. package/lib/chevre/service/order/placeOrder/factory.js +5 -6
  324. package/lib/chevre/service/order/placeOrder.d.ts +17 -12
  325. package/lib/chevre/service/order/placeOrder.js +7 -2
  326. package/lib/chevre/service/order/returnOrder.d.ts +2 -2
  327. package/lib/chevre/service/order/returnOrder.js +1 -1
  328. package/lib/chevre/service/order/sendOrder.d.ts +6 -6
  329. package/lib/chevre/service/order/sendOrder.js +14 -10
  330. package/lib/chevre/service/order.d.ts +3 -6
  331. package/lib/chevre/service/order.js +3 -9
  332. package/lib/chevre/service/payment/any/{fixOrderAsNeeded.d.ts → authorize/fixOrderAsNeeded.d.ts} +6 -6
  333. package/lib/chevre/service/payment/any/{fixOrderAsNeeded.js → authorize/fixOrderAsNeeded.js} +5 -8
  334. package/lib/chevre/service/payment/any/authorize/fixTransactionNumber.d.ts +8 -5
  335. package/lib/chevre/service/payment/any/authorize/handlePrePublishedPaymentMethodIdOnAuthorizing.d.ts +14 -10
  336. package/lib/chevre/service/payment/any/authorize/handlePrePublishedPaymentMethodIdOnAuthorizing.js +34 -17
  337. package/lib/chevre/service/payment/any/authorize.d.ts +105 -0
  338. package/lib/chevre/service/payment/any/authorize.js +239 -0
  339. package/lib/chevre/service/payment/any/factory.js +1 -0
  340. package/lib/chevre/service/payment/any/findAcceptAction.d.ts +43 -0
  341. package/lib/chevre/service/payment/any/findAcceptAction.js +95 -0
  342. package/lib/chevre/service/payment/any/findAuthorizeAction.d.ts +42 -0
  343. package/lib/chevre/service/payment/any/findAuthorizeAction.js +84 -0
  344. package/lib/chevre/service/payment/any/findCheckAction.d.ts +45 -0
  345. package/lib/chevre/service/payment/any/findCheckAction.js +90 -0
  346. package/lib/chevre/service/payment/any/invalidatePaymentUrl.d.ts +29 -0
  347. package/lib/chevre/service/payment/any/invalidatePaymentUrl.js +188 -0
  348. package/lib/chevre/service/payment/any/onPayActionCompleted.d.ts +14 -5
  349. package/lib/chevre/service/payment/any/onPayActionCompleted.js +10 -2
  350. package/lib/chevre/service/payment/any/onPaymentStatusChanged.d.ts +10 -5
  351. package/lib/chevre/service/payment/any/onPaymentStatusChanged.js +21 -11
  352. package/lib/chevre/service/payment/any/onRefundActionCompletedOrFailed.d.ts +13 -10
  353. package/lib/chevre/service/payment/any/onRefundActionCompletedOrFailed.js +9 -6
  354. package/lib/chevre/service/payment/any/processVoidPayTransaction.d.ts +30 -0
  355. package/lib/chevre/service/payment/any/processVoidPayTransaction.js +126 -0
  356. package/lib/chevre/service/payment/any/publishPaymentUrl/fixTransactionNumberOnPublishPaymentUrl.d.ts +2 -2
  357. package/lib/chevre/service/payment/any/publishPaymentUrl.d.ts +68 -0
  358. package/lib/chevre/service/payment/any/publishPaymentUrl.js +133 -0
  359. package/lib/chevre/service/payment/any/verifyTicketTokenAsNeeded.js +2 -1
  360. package/lib/chevre/service/payment/any/voidPayTransaction.d.ts +34 -0
  361. package/lib/chevre/service/payment/any/voidPayTransaction.js +38 -0
  362. package/lib/chevre/service/payment/any.d.ts +8 -305
  363. package/lib/chevre/service/payment/any.js +17 -857
  364. package/lib/chevre/service/payment/creditCard/authorize/processAuthorizeCreditCard.d.ts +8 -6
  365. package/lib/chevre/service/payment/creditCard/authorize/processAuthorizeCreditCard.js +4 -4
  366. package/lib/chevre/service/payment/creditCard/authorize/processAuthorizeCreditCard3ds.d.ts +8 -6
  367. package/lib/chevre/service/payment/creditCard/authorize/processAuthorizeCreditCard3ds.js +3 -3
  368. package/lib/chevre/service/payment/creditCard/authorize.d.ts +3 -2
  369. package/lib/chevre/service/payment/creditCard/authorize.js +2 -2
  370. package/lib/chevre/service/payment/creditCard/payCreditCard.d.ts +7 -2
  371. package/lib/chevre/service/payment/creditCard/payCreditCard.js +8 -4
  372. package/lib/chevre/service/payment/creditCard/refundCreditCard.d.ts +7 -2
  373. package/lib/chevre/service/payment/creditCard/refundCreditCard.js +11 -7
  374. package/lib/chevre/service/payment/creditCard/voidTransaction.d.ts +9 -8
  375. package/lib/chevre/service/payment/creditCard/voidTransaction.js +15 -7
  376. package/lib/chevre/service/payment/faceToFace.d.ts +12 -3
  377. package/lib/chevre/service/payment/faceToFace.js +16 -8
  378. package/lib/chevre/service/payment/factory/createPayObjectServiceOutput.js +2 -1
  379. package/lib/chevre/service/payment/factory.js +4 -2
  380. package/lib/chevre/service/payment/movieTicket/authorize.d.ts +9 -2
  381. package/lib/chevre/service/payment/movieTicket/authorize.js +1 -1
  382. package/lib/chevre/service/payment/movieTicket/checkMovieTicket.d.ts +3 -3
  383. package/lib/chevre/service/payment/movieTicket/checkMovieTicket.js +3 -3
  384. package/lib/chevre/service/payment/movieTicket/payMovieTicket/payActionParams2seatInfoSyncIn.d.ts +12 -0
  385. package/lib/chevre/service/payment/movieTicket/payMovieTicket/payActionParams2seatInfoSyncIn.js +72 -0
  386. package/lib/chevre/service/payment/movieTicket/payMovieTicket/processSeatInfoSync.d.ts +8 -0
  387. package/lib/chevre/service/payment/movieTicket/payMovieTicket/processSeatInfoSync.js +29 -0
  388. package/lib/chevre/service/payment/movieTicket/payMovieTicket.d.ts +8 -3
  389. package/lib/chevre/service/payment/movieTicket/payMovieTicket.js +14 -77
  390. package/lib/chevre/service/payment/movieTicket/refundMovieTicket/createSeatInfoSyncCancelInOnRefund.d.ts +14 -0
  391. package/lib/chevre/service/payment/movieTicket/refundMovieTicket/createSeatInfoSyncCancelInOnRefund.js +49 -0
  392. package/lib/chevre/service/payment/movieTicket/refundMovieTicket/createSeatInfoSyncInOnRefund.d.ts +14 -0
  393. package/lib/chevre/service/{report.js → payment/movieTicket/refundMovieTicket/createSeatInfoSyncInOnRefund.js} +21 -8
  394. package/lib/chevre/service/payment/movieTicket/refundMovieTicket/processSeatInfoSync.d.ts +12 -0
  395. package/lib/chevre/service/payment/movieTicket/refundMovieTicket/processSeatInfoSync.js +72 -0
  396. package/lib/chevre/service/payment/movieTicket/refundMovieTicket/processSeatInfoSyncCancel.d.ts +8 -0
  397. package/lib/chevre/service/payment/movieTicket/refundMovieTicket/processSeatInfoSyncCancel.js +60 -0
  398. package/lib/chevre/service/payment/movieTicket/refundMovieTicket.d.ts +8 -3
  399. package/lib/chevre/service/payment/movieTicket/refundMovieTicket.js +20 -125
  400. package/lib/chevre/service/payment/movieTicket/validation.d.ts +11 -11
  401. package/lib/chevre/service/payment/movieTicket/validation.js +50 -32
  402. package/lib/chevre/service/payment/movieTicket/voidTransaction.d.ts +6 -2
  403. package/lib/chevre/service/payment/movieTicket/voidTransaction.js +1 -1
  404. package/lib/chevre/service/payment/paymentCard.d.ts +12 -3
  405. package/lib/chevre/service/payment/paymentCard.js +16 -8
  406. package/lib/chevre/service/permit.js +4 -2
  407. package/lib/chevre/service/reserve/cancelReservation.d.ts +1 -1
  408. package/lib/chevre/service/reserve/cancelReservation.js +24 -26
  409. package/lib/chevre/service/reserve/confirmReservation.js +48 -9
  410. package/lib/chevre/service/reserve/factory.d.ts +3 -3
  411. package/lib/chevre/service/reserve/findByCode.d.ts +4 -3
  412. package/lib/chevre/service/reserve/findByCode.js +41 -8
  413. package/lib/chevre/service/reserve/findReservations.d.ts +19 -0
  414. package/lib/chevre/service/reserve/findReservations.js +74 -0
  415. package/lib/chevre/service/reserve/potentialActions/onReservationCanceled.d.ts +2 -3
  416. package/lib/chevre/service/reserve/potentialActions/onReservationCanceled.js +1 -0
  417. package/lib/chevre/service/reserve/potentialActions/onReservationConfirmed.d.ts +8 -3
  418. package/lib/chevre/service/reserve/searchByOrder.d.ts +2 -2
  419. package/lib/chevre/service/reserve/searchByOrder.js +5 -3
  420. package/lib/chevre/service/reserve/useReservation.js +7 -6
  421. package/lib/chevre/service/reserve/verifyToken4reservation.js +2 -1
  422. package/lib/chevre/service/reserve.d.ts +2 -1
  423. package/lib/chevre/service/reserve.js +3 -1
  424. package/lib/chevre/service/task/acceptCOAOffer.js +11 -6
  425. package/lib/chevre/service/task/authorizePayment.js +25 -6
  426. package/lib/chevre/service/task/checkMovieTicket.js +3 -3
  427. package/lib/chevre/service/task/checkResource.js +2 -2
  428. package/lib/chevre/service/task/confirmPayTransaction.js +2 -2
  429. package/lib/chevre/service/task/confirmReserveTransaction.js +4 -2
  430. package/lib/chevre/service/task/deletePerson.js +0 -1
  431. package/lib/chevre/service/task/deleteTransaction.js +5 -1
  432. package/lib/chevre/service/task/invalidatePaymentUrl.js +8 -2
  433. package/lib/chevre/service/task/onAssetTransactionStatusChanged.js +4 -2
  434. package/lib/chevre/service/task/onOrderPaymentCompleted.js +2 -2
  435. package/lib/chevre/service/task/onResourceUpdated.js +1 -1
  436. package/lib/chevre/service/task/pay.js +11 -3
  437. package/lib/chevre/service/task/payment/invalidatePaymentUrlByTask.d.ts +7 -2
  438. package/lib/chevre/service/task/payment/payByTask.d.ts +22 -14
  439. package/lib/chevre/service/task/payment/payByTask.js +3 -2
  440. package/lib/chevre/service/task/payment/refundByTask.d.ts +7 -2
  441. package/lib/chevre/service/task/payment/voidPaymentByTask.d.ts +8 -0
  442. package/lib/chevre/service/task/placeOrder.js +10 -4
  443. package/lib/chevre/service/task/publishPaymentUrl.js +13 -5
  444. package/lib/chevre/service/task/refund.js +8 -2
  445. package/lib/chevre/service/task/returnOrder.js +4 -4
  446. package/lib/chevre/service/task/returnPayTransaction.js +8 -4
  447. package/lib/chevre/service/task/returnReserveTransaction.js +2 -1
  448. package/lib/chevre/service/task/sendOrder.js +4 -4
  449. package/lib/chevre/service/task/syncResourcesFromCOA.js +2 -0
  450. package/lib/chevre/service/task/voidPayTransaction.js +10 -4
  451. package/lib/chevre/service/task/voidPayment.js +8 -0
  452. package/lib/chevre/service/task/voidRegisterServiceTransaction.js +7 -6
  453. package/lib/chevre/service/task/voidReserveTransaction.js +8 -3
  454. package/lib/chevre/service/transaction/deleteTransaction.d.ts +4 -0
  455. package/lib/chevre/service/transaction/deleteTransaction.js +49 -49
  456. package/lib/chevre/service/transaction/placeOrder/confirm/validation/factory.d.ts +1 -1
  457. package/lib/chevre/service/transaction/placeOrder/confirm/validation/validatePrice.d.ts +2 -2
  458. package/lib/chevre/service/transaction/placeOrder/confirm/validation/validatePrice.js +2 -3
  459. package/lib/chevre/service/transaction/placeOrder/confirm/validation.d.ts +3 -3
  460. package/lib/chevre/service/transaction/placeOrder/confirm/validation.js +4 -6
  461. package/lib/chevre/service/transaction/placeOrder/confirm.d.ts +10 -5
  462. package/lib/chevre/service/transaction/placeOrder/confirm.js +77 -53
  463. package/lib/chevre/service/transaction/placeOrder/exportTasks/factory.js +4 -16
  464. package/lib/chevre/service/transaction/placeOrder/exportTasksById.d.ts +7 -6
  465. package/lib/chevre/service/transaction/placeOrder/exportTasksById.js +1 -1
  466. package/lib/chevre/service/transaction/placeOrder/{publishOrderNumberIfNotExist.d.ts → issueOrderNumberIfNotExist.d.ts} +4 -4
  467. package/lib/chevre/service/transaction/placeOrder/{publishOrderNumberIfNotExist.js → issueOrderNumberIfNotExist.js} +21 -13
  468. package/lib/chevre/service/transaction/placeOrder/publishConfirmationNumberIfNotExist.d.ts +2 -2
  469. package/lib/chevre/service/transaction/placeOrder/publishConfirmationNumberIfNotExist.js +3 -3
  470. package/lib/chevre/service/transaction/placeOrder/start.d.ts +3 -3
  471. package/lib/chevre/service/transaction/placeOrder/start.js +2 -2
  472. package/lib/chevre/service/transaction/placeOrder/updateAgent.d.ts +23 -0
  473. package/lib/chevre/service/transaction/placeOrder/updateAgent.js +126 -0
  474. package/lib/chevre/service/transaction/placeOrder.d.ts +2 -1
  475. package/lib/chevre/service/transaction/placeOrder.js +3 -1
  476. package/lib/chevre/service/transaction/returnOrder/exportTasks/factory.js +2 -1
  477. package/lib/chevre/service/transaction/returnOrder/potentialActions/returnPaymentMethod.js +2 -2
  478. package/lib/chevre/service/transaction/returnOrder/preStart/getReturnPolicyByProject.js +5 -3
  479. package/lib/chevre/service/transaction/returnOrder/preStart.d.ts +1 -1
  480. package/lib/chevre/service/transaction/returnOrder/preStart.js +3 -2
  481. package/lib/chevre/service/transaction/returnOrder.d.ts +16 -14
  482. package/lib/chevre/service/transaction/returnOrder.js +4 -4
  483. package/lib/chevre/service/transaction.d.ts +8 -24
  484. package/lib/chevre/service/transaction.js +6 -122
  485. package/lib/chevre/service/validation/validateOrder.js +7 -7
  486. package/lib/chevre/service.d.ts +0 -4
  487. package/lib/chevre/service.js +1 -12
  488. package/package.json +5 -5
  489. package/lib/chevre/repo/mongoose/schemas/telemetry.d.ts +0 -9
  490. package/lib/chevre/repo/mongoose/schemas/telemetry.js +0 -80
  491. package/lib/chevre/repo/telemetry.d.ts +0 -9
  492. package/lib/chevre/repo/telemetry.js +0 -14
  493. package/lib/chevre/service/offer/moneyTransfer/authorize.d.ts +0 -37
  494. package/lib/chevre/service/offer/moneyTransfer/authorize.js +0 -247
  495. package/lib/chevre/service/offer/moneyTransfer/returnMoneyTransfer.d.ts +0 -16
  496. package/lib/chevre/service/offer/moneyTransfer/returnMoneyTransfer.js +0 -96
  497. package/lib/chevre/service/offer/moneyTransfer/settleTransaction.d.ts +0 -9
  498. package/lib/chevre/service/offer/moneyTransfer/settleTransaction.js +0 -91
  499. package/lib/chevre/service/offer/moneyTransfer/voidTransaction.d.ts +0 -9
  500. package/lib/chevre/service/offer/moneyTransfer/voidTransaction.js +0 -78
  501. package/lib/chevre/service/offer/moneyTransfer.d.ts +0 -5
  502. package/lib/chevre/service/offer/moneyTransfer.js +0 -11
  503. package/lib/chevre/service/report/ownershipInfo.d.ts +0 -27
  504. package/lib/chevre/service/report/ownershipInfo.js +0 -39
  505. package/lib/chevre/service/report/telemetry.d.ts +0 -309
  506. package/lib/chevre/service/report/telemetry.js +0 -449
  507. package/lib/chevre/service/report.d.ts +0 -6
  508. package/lib/chevre/service/task/confirmMoneyTransfer.d.ts +0 -6
  509. package/lib/chevre/service/task/confirmMoneyTransfer.js +0 -19
  510. package/lib/chevre/service/task/returnMoneyTransfer.d.ts +0 -6
  511. package/lib/chevre/service/task/returnMoneyTransfer.js +0 -55
  512. package/lib/chevre/service/task/voidMoneyTransferTransaction.d.ts +0 -6
  513. package/lib/chevre/service/task/voidMoneyTransferTransaction.js +0 -22
  514. package/lib/chevre/service/transaction/moneyTransfer/exportTasks/factory.d.ts +0 -9
  515. package/lib/chevre/service/transaction/moneyTransfer/exportTasks/factory.js +0 -138
  516. package/lib/chevre/service/transaction/moneyTransfer/factory.d.ts +0 -2
  517. package/lib/chevre/service/transaction/moneyTransfer/factory.js +0 -55
  518. package/lib/chevre/service/transaction/moneyTransfer/potentialActions.d.ts +0 -9
  519. package/lib/chevre/service/transaction/moneyTransfer/potentialActions.js +0 -65
  520. package/lib/chevre/service/transaction/moneyTransfer.d.ts +0 -69
  521. package/lib/chevre/service/transaction/moneyTransfer.js +0 -649
@@ -119,23 +119,7 @@ function createPotentialActions(params) {
119
119
  transaction.object.reservations.map((reservation) => {
120
120
  // 最適化(2022-06-06~)
121
121
  let cancelObject;
122
- if (reservation.typeOf === factory.reservationType.BusReservation) {
123
- cancelObject = {
124
- typeOf: reservation.typeOf,
125
- id: reservation.id,
126
- issuedThrough: {
127
- typeOf: reservation.issuedThrough?.typeOf
128
- },
129
- reservationFor: {
130
- typeOf: reservation.reservationFor.typeOf,
131
- id: String(reservation.reservationFor.id)
132
- },
133
- reservationNumber: reservation.reservationNumber,
134
- // ReservationConfirmed->ReservationCancelledのみ処理されるように保証する
135
- reservationStatus: factory.reservationStatusType.ReservationConfirmed
136
- };
137
- }
138
- else if (reservation.typeOf === factory.reservationType.EventReservation) {
122
+ if (reservation.typeOf === factory.reservationType.EventReservation) {
139
123
  cancelObject = {
140
124
  typeOf: reservation.typeOf,
141
125
  id: reservation.id,
@@ -18,8 +18,8 @@ export declare function validateStartParams(params: IStartParams): (repos: {
18
18
  assetTransaction: AssetTransactionRepo;
19
19
  }) => Promise<{
20
20
  reserveTransaction: import("@chevre/factory/lib/assetTransaction/reserve").ITransaction | undefined;
21
- reservations: (Pick<import("@chevre/factory/lib/reservation/event").IReservation, "id" | "typeOf" | "issuedThrough" | "reservationNumber"> & {
22
- reservationFor: Pick<factory.reservation.IReservationFor<factory.reservationType.EventReservation>, "id" | "typeOf">;
21
+ reservations: (Pick<import("@chevre/factory/lib/reservation/event").IReservation, "id" | "typeOf" | "reservationNumber" | "issuedThrough"> & {
22
+ reservationFor: Pick<factory.reservation.eventReservation.IReservationFor, "id" | "typeOf">;
23
23
  })[] | undefined;
24
24
  }>;
25
25
  /**
@@ -63,7 +63,7 @@ function validateStartParams(params) {
63
63
  if (reserveTransaction === undefined) {
64
64
  // 予約存在確認
65
65
  if (typeof params.object.reservation?.id === 'string') {
66
- const reservation = await repos.reservation.projectFieldsById({
66
+ const reservation = await repos.reservation.findReservationById({
67
67
  id: params.object.reservation.id,
68
68
  inclusion: [
69
69
  'issuedThrough', 'typeOf', 'reservationNumber', 'reservationFor.id', 'reservationFor.typeOf', 'provider', 'reservationStatus'
@@ -61,8 +61,8 @@ function start(params) {
61
61
  throw new factory.errors.NotFound('Product');
62
62
  }
63
63
  // fromとtoをfix
64
- const { fromLocation } = await fixFromLocation(params, product)(repos);
65
- const { toLocation } = await fixToLocation(params, product)(repos);
64
+ const { fromLocation } = await fixFromLocation(params, product)({});
65
+ const { toLocation } = await fixToLocation(params, product)({});
66
66
  const amount = fixMonetaryAmount(params, product);
67
67
  // 自動発行廃止(2022-05-17~)
68
68
  const transactionNumber = params.transactionNumber;
@@ -202,7 +202,7 @@ function fixFromLocation(params, product) {
202
202
  const transactionType = params.object.pendingTransaction?.typeOf;
203
203
  switch (transactionType) {
204
204
  case factory.account.transactionType.Withdraw:
205
- case factory.account.transactionType.Transfer:
205
+ case factory.account.transactionType.Transfer: {
206
206
  const fromLocationObject = fromLocation;
207
207
  // Permitの存在しない注文口座に対応する
208
208
  const hasNoPermit = fromLocationObject.hasNoPermit === true;
@@ -237,6 +237,7 @@ function fixFromLocation(params, product) {
237
237
  issuedThrough: { id: fromLocationObject.issuedThrough?.id }
238
238
  };
239
239
  break;
240
+ }
240
241
  default:
241
242
  // no op
242
243
  }
@@ -264,7 +265,7 @@ function fixToLocation(params, product) {
264
265
  const transactionType = params.object.pendingTransaction?.typeOf;
265
266
  switch (transactionType) {
266
267
  case factory.account.transactionType.Deposit:
267
- case factory.account.transactionType.Transfer:
268
+ case factory.account.transactionType.Transfer: {
268
269
  const toLocationObject = toLocation;
269
270
  // Permitの存在しない注文口座に対応する
270
271
  const hasNoPermit = toLocationObject.hasNoPermit === true;
@@ -299,6 +300,7 @@ function fixToLocation(params, product) {
299
300
  issuedThrough: { id: toLocationObject.issuedThrough?.id }
300
301
  };
301
302
  break;
303
+ }
302
304
  default:
303
305
  // no op
304
306
  }
@@ -408,7 +410,7 @@ function exportTasksById(params) {
408
410
  }
409
411
  break;
410
412
  case factory.transactionStatusType.Canceled:
411
- case factory.transactionStatusType.Expired:
413
+ case factory.transactionStatusType.Expired: {
412
414
  const cancelMoneyTransferTaskAttributes = {
413
415
  project: { typeOf: transaction.project.typeOf, id: transaction.project.id },
414
416
  name: factory.taskName.CancelMoneyTransfer,
@@ -423,6 +425,7 @@ function exportTasksById(params) {
423
425
  };
424
426
  taskAttributes.push(cancelMoneyTransferTaskAttributes);
425
427
  break;
428
+ }
426
429
  default:
427
430
  throw new factory.errors.NotImplemented(`Transaction status "${transaction.status}" not implemented.`);
428
431
  }
@@ -1,20 +1,21 @@
1
1
  import * as factory from '../../../factory';
2
2
  import { Settings } from '../../../settings';
3
- import type { ActionRepo } from '../../../repo/action';
3
+ import type { CheckMovieTicketActionRepo } from '../../../repo/action/checkMovieTicket';
4
4
  import type { CredentialsRepo } from '../../../repo/credentials';
5
5
  import type { EventRepo } from '../../../repo/event';
6
6
  import type { PaymentServiceRepo } from '../../../repo/paymentService';
7
7
  import type { PaymentServiceProviderRepo } from '../../../repo/paymentServiceProvider';
8
8
  import type { SellerPaymentAcceptedRepo } from '../../../repo/sellerPaymentAccepted';
9
9
  import * as MovieTicketPayment from '../../payment/movieTicket';
10
- export type ICheckOperation<T> = (repos: {
11
- action: ActionRepo;
10
+ export interface ICheckRepos {
11
+ checkMovieTicketAction: CheckMovieTicketActionRepo;
12
12
  credentials: CredentialsRepo;
13
13
  event: EventRepo;
14
14
  paymentAccepted: SellerPaymentAcceptedRepo;
15
15
  paymentService: PaymentServiceRepo;
16
16
  paymentServiceProvider: PaymentServiceProviderRepo;
17
- }, settings: Settings) => Promise<T>;
17
+ }
18
+ export type ICheckOperation<T> = (repos: ICheckRepos, settings: Settings) => Promise<T>;
18
19
  /**
19
20
  * 決済方法認証
20
21
  */
@@ -20,5 +20,5 @@ export type IConfirmOperation<T> = (repos: IConfirmRepos) => Promise<T>;
20
20
  * 取引確定
21
21
  */
22
22
  export declare function confirm(params: factory.assetTransaction.pay.IConfirmParams & {
23
- options: {};
23
+ options: Record<string, never>;
24
24
  }): IConfirmOperation<void>;
@@ -94,7 +94,7 @@ function exportTasksById(params) {
94
94
  data: onAssetTransactionStatusChangedTaskData
95
95
  };
96
96
  switch (transaction.status) {
97
- case factory.transactionStatusType.Confirmed:
97
+ case factory.transactionStatusType.Confirmed: {
98
98
  const payActions = potentialActions?.pay;
99
99
  if (Array.isArray(payActions) && payActions.length > 0) {
100
100
  const payTasks = payActions.map(({ object, purpose }) => {
@@ -113,6 +113,7 @@ function exportTasksById(params) {
113
113
  taskAttributes.push(...payTasks);
114
114
  }
115
115
  break;
116
+ }
116
117
  case factory.transactionStatusType.Canceled:
117
118
  taskAttributes.push(voidPaymentTasks, onAssetTransactionStatusChangedTask);
118
119
  break;
@@ -1,22 +1,27 @@
1
1
  import * as factory from '../../../factory';
2
2
  import { Settings } from '../../../settings';
3
3
  import type { AcceptedPaymentMethodRepo } from '../../../repo/acceptedPaymentMethod';
4
- import type { ActionRepo } from '../../../repo/action';
4
+ import type { AcceptPayActionRepo } from '../../../repo/action/acceptPay';
5
+ import type { AuthorizeInvoiceActionRepo } from '../../../repo/action/authorizeInvoice';
5
6
  import type { EventRepo } from '../../../repo/event';
6
7
  import type { EventSeriesRepo } from '../../../repo/eventSeries';
8
+ import type { IssuerRepo } from '../../../repo/issuer';
7
9
  import type { PaymentServiceRepo } from '../../../repo/paymentService';
8
10
  import type { PaymentServiceProviderRepo } from '../../../repo/paymentServiceProvider';
9
11
  import type { SellerPaymentAcceptedRepo } from '../../../repo/sellerPaymentAccepted';
10
12
  import * as CreditCardPayment from '../../payment/creditCard';
11
- export type IPublishPaymentUrlOperation<T> = (repos: {
13
+ export interface IPublishPaymentUrlRepos {
12
14
  acceptedPaymentMethod: AcceptedPaymentMethodRepo;
13
- action: ActionRepo;
15
+ authorizeInvoiceAction: AuthorizeInvoiceActionRepo;
16
+ acceptPayAction: AcceptPayActionRepo;
14
17
  event: EventRepo;
15
18
  eventSeries: EventSeriesRepo;
19
+ issuer: IssuerRepo;
16
20
  paymentAccepted: SellerPaymentAcceptedRepo;
17
21
  paymentService: PaymentServiceRepo;
18
22
  paymentServiceProvider: PaymentServiceProviderRepo;
19
- }, settings: Settings) => Promise<T>;
23
+ }
24
+ export type IPublishPaymentUrlOperation<T> = (repos: IPublishPaymentUrlRepos, settings: Settings) => Promise<T>;
20
25
  export type IPublishPaymentUrlResult = CreditCardPayment.IPaymentAgencyTransaction & {
21
26
  paymentMethodId: string;
22
27
  paymentUrl: string;
@@ -102,12 +102,12 @@ function publishPaymentUrl(params, options) {
102
102
  : undefined,
103
103
  ...(typeof params.identifier === 'string') ? { identifier: params.identifier } : undefined
104
104
  };
105
- const action = await repos.action.start(actionAttributes);
105
+ const action = await repos.acceptPayAction.start(actionAttributes);
106
106
  let result;
107
107
  let recipe;
108
108
  try {
109
109
  switch (paymentServiceType) {
110
- case factory.service.paymentService.PaymentServiceType.CreditCard:
110
+ case factory.service.paymentService.PaymentServiceType.CreditCard: {
111
111
  const authorizeResult = await CreditCardPayment.authorize({
112
112
  ...params,
113
113
  id: '' // 決済URL発行プロセスにおいては決済取引IDは使用しないので空文字でok
@@ -141,13 +141,14 @@ function publishPaymentUrl(params, options) {
141
141
  result
142
142
  });
143
143
  break;
144
+ }
144
145
  default:
145
146
  throw new factory.errors.NotImplemented(`Payment service '${paymentServiceType}' not implemented`);
146
147
  }
147
148
  }
148
149
  catch (error) {
149
150
  try {
150
- await repos.action.giveUp({ typeOf: actionAttributes.typeOf, id: action.id, error });
151
+ await repos.acceptPayAction.giveUp({ typeOf: actionAttributes.typeOf, id: action.id, error });
151
152
  }
152
153
  catch (__) {
153
154
  // 失敗したら仕方ない
@@ -158,7 +159,7 @@ function publishPaymentUrl(params, options) {
158
159
  paymentMethodId: result.paymentMethodId,
159
160
  paymentUrl: result.paymentUrl
160
161
  };
161
- await repos.action.completeWithVoid({ typeOf: actionAttributes.typeOf, id: action.id, result: actionResult, recipe });
162
+ await repos.acceptPayAction.completeWithVoid({ typeOf: actionAttributes.typeOf, id: action.id, result: actionResult, recipe });
162
163
  return result;
163
164
  };
164
165
  }
@@ -83,7 +83,7 @@ function createStartParams(params, options) {
83
83
  };
84
84
  accountId = ''; // 強制的に空文字化(2024-06-14~)
85
85
  break;
86
- case factory.service.paymentService.PaymentServiceType.MovieTicket:
86
+ case factory.service.paymentService.PaymentServiceType.MovieTicket: {
87
87
  const specifiedMovieTickets = params.object.paymentMethod?.movieTickets;
88
88
  totalPaymentDue = {
89
89
  typeOf: 'MonetaryAmount',
@@ -103,6 +103,7 @@ function createStartParams(params, options) {
103
103
  ? specifiedMovieTickets[0].identifier // 決済カードidentifierは1つのみ許可の前提
104
104
  : '';
105
105
  break;
106
+ }
106
107
  default:
107
108
  // no op
108
109
  }
@@ -2,20 +2,17 @@ import * as factory from '../../../../../factory';
2
2
  import type { AcceptedPaymentMethodRepo } from '../../../../../repo/acceptedPaymentMethod';
3
3
  import type { EventRepo } from '../../../../../repo/event';
4
4
  import type { EventSeriesRepo } from '../../../../../repo/eventSeries';
5
+ import type { IssuerRepo } from '../../../../../repo/issuer';
6
+ import type { PaymentServiceRepo } from '../../../../../repo/paymentService';
5
7
  /**
6
8
  * 必要あらば関連リソースの対応決済方法を検証する
7
9
  */
8
10
  export declare function validateAcceptedPaymentMethodIfNeeded(params: Pick<factory.assetTransaction.pay.IStartParamsWithoutDetail, 'object'> & {
9
11
  instrument: factory.action.trade.pay.IPlaceOrderRelatedInstrument[];
10
- } | {
11
- object: factory.action.accept.pay.IPayObject & {
12
- paymentMethod: factory.action.accept.pay.IPaymentMethod & {
13
- movieTickets: never;
14
- };
15
- };
16
- instrument: factory.action.accept.pay.IInstrument[];
17
12
  }): (repos: {
18
13
  acceptedPaymentMethod: AcceptedPaymentMethodRepo;
19
14
  event: EventRepo;
20
15
  eventSeries: EventSeriesRepo;
16
+ issuer: IssuerRepo;
17
+ paymentService: PaymentServiceRepo;
21
18
  }) => Promise<void>;
@@ -28,18 +28,29 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
29
  exports.validateAcceptedPaymentMethodIfNeeded = validateAcceptedPaymentMethodIfNeeded;
30
30
  const debug_1 = __importDefault(require("debug"));
31
+ // import * as jwt from 'jsonwebtoken';
31
32
  const factory = __importStar(require("../../../../../factory"));
32
33
  const debug = (0, debug_1.default)('chevre-domain:service:assetTransaction:pay');
33
34
  /**
34
35
  * 必要あらば関連リソースの対応決済方法を検証する
35
36
  */
36
- function validateAcceptedPaymentMethodIfNeeded(params) {
37
+ function validateAcceptedPaymentMethodIfNeeded(params
38
+ // | {
39
+ // object: factory.action.accept.pay.IPayObject & {
40
+ // paymentMethod: factory.action.accept.pay.IPaymentMethod & {
41
+ // movieTickets: never;
42
+ // };
43
+ // };
44
+ // instrument: factory.action.accept.pay.IInstrument[];
45
+ // }
46
+ ) {
37
47
  return async (repos) => {
38
48
  const now = new Date();
39
49
  /**
40
50
  * 検証対象のイベントIDリスト
41
51
  */
42
52
  let checkingEventIds;
53
+ let paymentService;
43
54
  const paymentServiceType = params.object.typeOf;
44
55
  const paymentServiceId = params.object.id;
45
56
  // CreditCard or MovieTicket?
@@ -49,6 +60,16 @@ function validateAcceptedPaymentMethodIfNeeded(params) {
49
60
  if (Array.isArray(orderedItems)) {
50
61
  checkingEventIds = orderedItems.map((orderedItem) => orderedItem.orderedItem.serviceOutput.reservationFor.id);
51
62
  }
63
+ paymentService = (await repos.paymentService.projectFields({
64
+ limit: 1,
65
+ page: 1,
66
+ // project: { id: { $eq: params.project.id } },
67
+ typeOf: { $eq: paymentServiceType },
68
+ id: { $eq: paymentServiceId }
69
+ }, ['availableChannel', 'serviceType'])).shift();
70
+ if (paymentService === undefined) {
71
+ throw new factory.errors.NotFound(factory.service.paymentService.PaymentServiceType.CreditCard);
72
+ }
52
73
  }
53
74
  else if (paymentServiceType === factory.service.paymentService.PaymentServiceType.MovieTicket) {
54
75
  const movieTickets = params.object.paymentMethod.movieTickets;
@@ -59,12 +80,22 @@ function validateAcceptedPaymentMethodIfNeeded(params) {
59
80
  throw new factory.errors.Argument('movieTickets', 'Number of events must be 1');
60
81
  }
61
82
  }
83
+ paymentService = (await repos.paymentService.projectFields({
84
+ limit: 1,
85
+ page: 1,
86
+ // project: { id: { $eq: params.project.id } },
87
+ typeOf: { $eq: paymentServiceType },
88
+ id: { $eq: paymentServiceId }
89
+ }, ['availableChannel', 'serviceType'])).shift();
90
+ if (paymentService === undefined) {
91
+ throw new factory.errors.NotFound(factory.service.paymentService.PaymentServiceType.MovieTicket);
92
+ }
62
93
  }
63
94
  else {
64
95
  // 対面決済ではひとまず対応決済方法検証なし
65
96
  }
66
97
  debug('validateAcceptedPaymentMethodIfNeeded: checkingEventIds:', checkingEventIds, paymentServiceType);
67
- if (Array.isArray(checkingEventIds)) {
98
+ if (Array.isArray(checkingEventIds) && paymentService !== undefined) {
68
99
  // 検証対象のイベントIDが存在する場合、その数が0ということはありえない
69
100
  if (checkingEventIds.length === 0) {
70
101
  throw new factory.errors.ArgumentNull('object.serviceOutput.referencesOrder.orderedItem');
@@ -81,47 +112,235 @@ function validateAcceptedPaymentMethodIfNeeded(params) {
81
112
  }
82
113
  const uniqueEventSeriesIds = [...new Set(eventSeriesIds)];
83
114
  debug('validateAcceptedPaymentMethodIfNeeded: eventSeries with AggregateOffer?', uniqueEventSeriesIds);
84
- for (const eventSeriesId of uniqueEventSeriesIds) {
85
- const eventSeries = (await repos.eventSeries.projectEventSeriesFields({
86
- limit: 1,
87
- page: 1,
88
- id: { $eq: eventSeriesId }
89
- }, ['offers'])).shift();
90
- if (eventSeries === undefined) {
91
- throw new factory.errors.NotFound(factory.eventType.ScreeningEventSeries);
92
- }
93
- if (eventSeries.offers?.typeOf === factory.offerType.AggregateOffer) {
94
- // 対応決済方法オファーIDの指定が必要
95
- const acceptedPaymentMethodOfferIds = [];
96
- params.instrument.forEach((instrument) => {
97
- if (instrument.typeOf === factory.offerType.Offer) {
98
- acceptedPaymentMethodOfferIds.push(instrument.id);
99
- }
100
- });
101
- if (acceptedPaymentMethodOfferIds.length === 0) {
102
- throw new factory.errors.ArgumentNull('acceptedPaymentMethodOfferIds');
103
- }
104
- // 全施設コンテンツについて有効な対応決済方法オファーの存在を検証
105
- const validAcceptedPaymentMethodOffer = (await repos.acceptedPaymentMethod.findAcceptedPaymentMethods({
106
- limit: 1,
107
- page: 1,
108
- id: { $in: acceptedPaymentMethodOfferIds }, // 指定されたIDで
109
- itemOffered: { id: { $eq: eventSeriesId } }, // リソースに対して
110
- acceptedPaymentMethod: { id: { $eq: paymentServiceId } }, // 決済方法を許可
111
- validFrom: { $lte: now }, // 現在有効
112
- validThrough: { $gte: now } // 現在有効
113
- }, ['identifier'])).shift();
114
- if (validAcceptedPaymentMethodOffer === undefined) {
115
- throw new factory.errors.NotFound(factory.offerType.Offer, `payment not accepted. eventSeriesId: ${eventSeriesId}`);
116
- }
117
- }
118
- else {
119
- // 集約オファーでなければ検証の必要なし
120
- }
115
+ // 決済方法に設定されたカスタム検証URLに依存する場合はこちら↓
116
+ const customValidationUrl = paymentService.availableChannel?.customValidationUrl;
117
+ if (typeof customValidationUrl === 'string' && customValidationUrl !== '') {
118
+ await validateByCustomUrl({
119
+ customValidationUrl,
120
+ eventSeriesIds: uniqueEventSeriesIds,
121
+ paymentMethodType: paymentService.serviceType.codeValue,
122
+ // amount: number,
123
+ now
124
+ });
121
125
  }
126
+ // トークンで検証する場合はこち↓
127
+ // // 指定された全トークンを抽出
128
+ // const acceptedPaymentMethodOfferTokens: string[] = [];
129
+ // params.instrument.forEach((instrument) => {
130
+ // if (instrument.typeOf === factory.offerType.Offer) {
131
+ // acceptedPaymentMethodOfferTokens.push(instrument.id);
132
+ // }
133
+ // });
134
+ // await validateAllItemTokens(
135
+ // paymentServiceId,
136
+ // uniqueEventSeriesIds,
137
+ // acceptedPaymentMethodOfferTokens,
138
+ // now
139
+ // )(repos);
122
140
  }
123
141
  else {
124
142
  // 関連注文の指定がなければ検証の必要なし
125
143
  }
126
144
  };
127
145
  }
146
+ const TIMEOUT = 2000;
147
+ // interface ICustomValidationResponse {
148
+ // isAllowed: boolean;
149
+ // };
150
+ async function validateByCustomUrl(params) {
151
+ try {
152
+ // 判定エンジンへのリクエスト
153
+ const validationRequest = {
154
+ eventSeriesIds: params.eventSeriesIds,
155
+ paymentMethodType: params.paymentMethodType,
156
+ // amount: params.amount
157
+ };
158
+ const res = await fetch(params.customValidationUrl, {
159
+ method: 'POST',
160
+ headers: { 'Content-Type': 'application/json' },
161
+ body: JSON.stringify(validationRequest),
162
+ // body data type must match "Content-Type" header
163
+ signal: AbortSignal.timeout(TIMEOUT)
164
+ });
165
+ if (!res.ok) {
166
+ throw new factory.errors.Argument('paymentMethod', `paymentMethod denied by the customValidation. statusCode: ${res.status}`);
167
+ }
168
+ }
169
+ catch (error) {
170
+ // ネットワークエラーやタイムアウト時のハンドリング
171
+ // サービス継続を優先するか、安全側に倒してエラーにするかはポリシー次第
172
+ debug('Custom validation failed:', error.message);
173
+ throw error;
174
+ }
175
+ }
176
+ // /**
177
+ // * トークンのペイロード構造
178
+ // */
179
+ // interface IPaymentOfferPayload extends Pick<factory.acceptedPaymentMethodOffer.IAcceptedPaymentMethodOffer, 'acceptedPaymentMethod' | 'itemOffered' | 'validFrom' | 'validThrough'> {
180
+ // iss: string;
181
+ // // sub: string; // 商品ID
182
+ // // paymentOffer: {
183
+ // // allowedMethods: string[];
184
+ // // limitAmount: number;
185
+ // // currency: string;
186
+ // // };
187
+ // }
188
+ // async function verifyOfferToken(params: {
189
+ // token: string;
190
+ // secret: string;
191
+ // issuer?: string;
192
+ // }): Promise<IPaymentOfferPayload> {
193
+ // let result: IPaymentOfferPayload;
194
+ // const { issuer, secret, token } = params;
195
+ // try {
196
+ // result = await new Promise<IPaymentOfferPayload>((resolve, reject) => {
197
+ // jwt.verify(
198
+ // token,
199
+ // secret,
200
+ // {
201
+ // algorithms: ['HS256'],
202
+ // issuer
203
+ // // ...(Array.isArray(params.audience)) ? { audience: params.audience } : undefined
204
+ // },
205
+ // (err, decoded: any) => {
206
+ // if (err instanceof Error) {
207
+ // reject(err);
208
+ // } else {
209
+ // resolve(decoded);
210
+ // }
211
+ // });
212
+ // });
213
+ // } catch (error) {
214
+ // // JWTエラーをハンドリング
215
+ // if (error instanceof jwt.TokenExpiredError) {
216
+ // throw new factory.errors.Argument('token', `invalid token. [${error.message} expiredAt:${error.expiredAt}]`);
217
+ // } else if (error instanceof jwt.JsonWebTokenError) {
218
+ // throw new factory.errors.Argument('token', `invalid token. [${error.message}]`);
219
+ // }
220
+ // throw error;
221
+ // }
222
+ // return result;
223
+ // }
224
+ // /**
225
+ // * 複数アイテムのトークン検証メイン関数
226
+ // */
227
+ // function validateAllItemTokens(
228
+ // selectedMethodId: string, // ユーザーが選択した決済方法ID
229
+ // eventSeriesIds: string[], // DBから取得した注文商品リスト
230
+ // providedTokens: string[], // クライアントから送られたJWT配列
231
+ // now: Date
232
+ // ) {
233
+ // return async (repos: {
234
+ // eventSeries: EventSeriesRepo;
235
+ // issuer: IssuerRepo;
236
+ // }) => {
237
+ // // 1. トークンをデコードして、商品ID(sub)をキーにしたマップを作成
238
+ // // ※ここでは署名検証前なので、decodeのみ行う
239
+ // const tokenMap = new Map<string, string>();
240
+ // providedTokens.forEach(t => {
241
+ // try {
242
+ // const decoded = jwt.decode(t) as IPaymentOfferPayload;
243
+ // if (decoded && typeof decoded.itemOffered?.id === 'string') {
244
+ // tokenMap.set(decoded.itemOffered.id, t);
245
+ // }
246
+ // } catch {
247
+ // // no op
248
+ // }
249
+ // });
250
+ // // 2. 全アイテムについてループを回して検証
251
+ // for (const eventSeriesId of eventSeriesIds) {
252
+ // const eventSeries = (await repos.eventSeries.projectEventSeriesFields(
253
+ // {
254
+ // limit: 1,
255
+ // page: 1,
256
+ // id: { $eq: eventSeriesId }
257
+ // },
258
+ // ['offers', 'project']
259
+ // )).shift();
260
+ // if (eventSeries === undefined) {
261
+ // throw new factory.errors.NotFound(factory.eventType.ScreeningEventSeries);
262
+ // }
263
+ // if (eventSeries.offers?.typeOf === factory.offerType.AggregateOffer) {
264
+ // // // 対応決済方法オファーIDの指定が必要
265
+ // // const acceptedPaymentMethodOfferTokens: string[] = [];
266
+ // // // const acceptedPaymentMethodOfferIds: string[] = [];
267
+ // // params.instrument.forEach((instrument) => {
268
+ // // if (instrument.typeOf === factory.offerType.Offer) {
269
+ // // acceptedPaymentMethodOfferTokens.push(instrument.id);
270
+ // // // acceptedPaymentMethodOfferIds.push(instrument.id);
271
+ // // }
272
+ // // });
273
+ // // if (acceptedPaymentMethodOfferTokens.length === 0) {
274
+ // // throw new factory.errors.ArgumentNull('acceptedPaymentMethodOfferTokens');
275
+ // // }
276
+ // // // if (acceptedPaymentMethodOfferIds.length === 0) {
277
+ // // // throw new factory.errors.ArgumentNull('acceptedPaymentMethodOfferIds');
278
+ // // // }
279
+ // const token = tokenMap.get(eventSeriesId);
280
+ // if (!token) {
281
+ // // throw new Error(`商品[${eventSeriesId}]の決済許可トークンが不足しています。`);
282
+ // throw new factory.errors.ArgumentNull(
283
+ // factory.offerType.Offer,
284
+ // `token required. eventSeriesId: ${eventSeriesId}`
285
+ // );
286
+ // }
287
+ // console.log('check token...:', token);
288
+ // // 3. 既存の「発行者管理」から公開鍵を取得
289
+ // const issuerCode = 'DefaultTokenIssuer';
290
+ // const issuer = await repos.issuer.findByIdentifier({
291
+ // project: { id: eventSeries.project.id },
292
+ // identifier: issuerCode
293
+ // });
294
+ // if (typeof issuer.tokenSecret !== 'string' || issuer.tokenSecret === '') {
295
+ // throw new factory.errors.NotFound('issuer.tokenSecret');
296
+ // }
297
+ // const verifiedOffer = await verifyOfferToken({
298
+ // secret: issuer.tokenSecret,
299
+ // issuer: issuer.url,
300
+ // token
301
+ // });
302
+ // // 5. ビジネスルールの厳密な検証
303
+ // // (a) トークン内の商品IDが、現在のアイテムと一致するか(すり替え防止)
304
+ // if (verifiedOffer.itemOffered.id !== eventSeriesId) {
305
+ // throw new factory.errors.Argument('token', `invalid token. [itemOffered.id not matched]`);
306
+ // }
307
+ // // (b) 選択された決済方法が、この商品の許可リストに含まれているか
308
+ // if (verifiedOffer.acceptedPaymentMethod.id !== selectedMethodId) {
309
+ // throw new factory.errors.NotFound(
310
+ // factory.offerType.Offer,
311
+ // `payment not accepted. eventSeriesId: ${eventSeriesId}`
312
+ // );
313
+ // }
314
+ // // // (c) 金額の検証(判定時より金額が上がっていないか)
315
+ // // if (item.amount > payload.paymentOffer.limitAmount) {
316
+ // // throw new Error(`商品[${item.productId}]の金額が承認された上限を超えています。`);
317
+ // // }
318
+ // // 現在有効検証
319
+ // console.log('check validFrom?:', now);
320
+ // // // 全施設コンテンツについて有効な対応決済方法オファーの存在を検証
321
+ // // const validAcceptedPaymentMethodOffer = (await repos.acceptedPaymentMethod.findAcceptedPaymentMethods(
322
+ // // {
323
+ // // limit: 1,
324
+ // // page: 1,
325
+ // // id: { $in: acceptedPaymentMethodOfferIds }, // 指定されたIDで
326
+ // // itemOffered: { id: { $eq: eventSeriesId } }, // リソースに対して
327
+ // // acceptedPaymentMethod: { id: { $eq: paymentServiceId } }, // 決済方法を許可
328
+ // // validFrom: { $lte: now }, // 現在有効
329
+ // // validThrough: { $gte: now } // 現在有効
330
+ // // },
331
+ // // ['identifier']
332
+ // // )).shift();
333
+ // // if (validAcceptedPaymentMethodOffer === undefined) {
334
+ // // throw new factory.errors.NotFound(
335
+ // // factory.offerType.Offer,
336
+ // // `payment not accepted. eventSeriesId: ${eventSeriesId}`
337
+ // // );
338
+ // // }
339
+ // } else {
340
+ // // 集約オファーでなければ検証の必要なし
341
+ // }
342
+ // }
343
+ // // 全てのアイテムで検証が通れば true
344
+ // return true;
345
+ // }
346
+ // }
@@ -1,7 +1,10 @@
1
1
  import * as factory from '../../../../factory';
2
2
  import { Settings } from '../../../../settings';
3
3
  import type { AccountingReportRepo } from '../../../../repo/accountingReport';
4
- import type { ActionRepo } from '../../../../repo/action';
4
+ import type { PayActionRepo } from '../../../../repo/action/pay';
5
+ import type { RefundActionRepo } from '../../../../repo/action/refund';
6
+ import type { CheckMovieTicketActionRepo } from '../../../../repo/action/checkMovieTicket';
7
+ import type { AuthorizeInvoiceActionRepo } from '../../../../repo/action/authorizeInvoice';
5
8
  import type { AssetTransactionRepo } from '../../../../repo/assetTransaction';
6
9
  import type { CredentialsRepo } from '../../../../repo/credentials';
7
10
  import type { EventRepo } from '../../../../repo/event';
@@ -13,7 +16,13 @@ import type { TaskRepo } from '../../../../repo/task';
13
16
  import { IPaymentAgencyTransaction } from '../../../payment/creditCard';
14
17
  export interface IProcessAuthorizeOperationRepos {
15
18
  accountingReport: AccountingReportRepo;
16
- action: ActionRepo;
19
+ action?: never;
20
+ actions: {
21
+ pay: PayActionRepo;
22
+ refund: RefundActionRepo;
23
+ };
24
+ checkMovieTicketAction: CheckMovieTicketActionRepo;
25
+ authorizeInvoiceAction: AuthorizeInvoiceActionRepo;
17
26
  credentials: CredentialsRepo;
18
27
  event: EventRepo;
19
28
  paymentAccepted: SellerPaymentAcceptedRepo;