@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,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.ProductOfferRepo = void 0;
13
4
  const factory = require("../factory");
@@ -29,152 +20,164 @@ const AVAILABLE_PROJECT_FIELDS = [
29
20
  * プロダクトオファーリポジトリ
30
21
  */
31
22
  class ProductOfferRepo {
23
+ productOfferModel;
32
24
  constructor(connection) {
33
25
  this.productOfferModel = connection.model(productOffer_1.modelName, (0, productOffer_1.createSchema)());
34
26
  }
35
27
  static CREATE_MONGO_CONDITIONS(params) {
36
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s;
37
28
  const andConditions = [];
38
- const idEq = (_a = params.id) === null || _a === void 0 ? void 0 : _a.$eq;
29
+ const idEq = params.id?.$eq;
39
30
  if (typeof idEq === 'string') {
40
31
  andConditions.push({ _id: { $eq: idEq } });
41
32
  }
42
- const projectIdEq = (_c = (_b = params.project) === null || _b === void 0 ? void 0 : _b.id) === null || _c === void 0 ? void 0 : _c.$eq;
33
+ const projectIdEq = params.project?.id?.$eq;
43
34
  if (typeof projectIdEq === 'string') {
44
35
  andConditions.push({ 'project.id': { $eq: projectIdEq } });
45
36
  }
46
- const identifierEq = (_d = params.identifier) === null || _d === void 0 ? void 0 : _d.$eq;
37
+ const identifierEq = params.identifier?.$eq;
47
38
  if (typeof identifierEq === 'string') {
48
39
  andConditions.push({ identifier: { $eq: identifierEq } });
49
40
  }
50
- const identifierIn = (_e = params.identifier) === null || _e === void 0 ? void 0 : _e.$in;
41
+ const identifierIn = params.identifier?.$in;
51
42
  if (Array.isArray(identifierIn)) {
52
43
  andConditions.push({ identifier: { $in: identifierIn } });
53
44
  }
54
- const itemOfferedIdentifierEq = (_g = (_f = params.itemOffered) === null || _f === void 0 ? void 0 : _f.identifier) === null || _g === void 0 ? void 0 : _g.$eq;
45
+ const itemOfferedIdentifierEq = params.itemOffered?.identifier?.$eq;
55
46
  if (typeof itemOfferedIdentifierEq === 'string') {
56
47
  andConditions.push({ 'itemOffered.identifier': { $eq: itemOfferedIdentifierEq } });
57
48
  }
58
- const itemOfferedIdentifierIn = (_j = (_h = params.itemOffered) === null || _h === void 0 ? void 0 : _h.identifier) === null || _j === void 0 ? void 0 : _j.$in;
49
+ const itemOfferedIdentifierIn = params.itemOffered?.identifier?.$in;
59
50
  if (Array.isArray(itemOfferedIdentifierIn)) {
60
51
  andConditions.push({ 'itemOffered.identifier': { $in: itemOfferedIdentifierIn } });
61
52
  }
62
- const offeredByIdEq = (_l = (_k = params.offeredBy) === null || _k === void 0 ? void 0 : _k.id) === null || _l === void 0 ? void 0 : _l.$eq;
53
+ const offeredByIdEq = params.offeredBy?.id?.$eq;
63
54
  if (typeof offeredByIdEq === 'string') {
64
55
  andConditions.push({ 'offeredBy.id': { $eq: offeredByIdEq } });
65
56
  }
66
- const sellerByIdEq = (_o = (_m = params.seller) === null || _m === void 0 ? void 0 : _m.id) === null || _o === void 0 ? void 0 : _o.$eq;
57
+ const sellerByIdEq = params.seller?.id?.$eq;
67
58
  if (typeof sellerByIdEq === 'string') {
68
59
  andConditions.push({ 'offeredBy.id': { $eq: sellerByIdEq } });
69
60
  }
70
- const validForMemberTierIdentifierEq = (_q = (_p = params.validForMemberTier) === null || _p === void 0 ? void 0 : _p.identifier) === null || _q === void 0 ? void 0 : _q.$eq;
61
+ const validForMemberTierIdentifierEq = params.validForMemberTier?.identifier?.$eq;
71
62
  if (typeof validForMemberTierIdentifierEq === 'string') {
72
63
  andConditions.push({ 'validForMemberTier.identifier': { $exists: true, $eq: validForMemberTierIdentifierEq } });
73
64
  }
74
- const validFromLte = (_r = params.validFrom) === null || _r === void 0 ? void 0 : _r.$lte;
65
+ const validFromLte = params.validFrom?.$lte;
75
66
  if (validFromLte instanceof Date) {
76
67
  andConditions.push({ validFrom: { $lte: validFromLte } });
77
68
  }
78
- const validThroughGte = (_s = params.validThrough) === null || _s === void 0 ? void 0 : _s.$gte;
69
+ const validThroughGte = params.validThrough?.$gte;
79
70
  if (validThroughGte instanceof Date) {
80
71
  andConditions.push({ validThrough: { $gte: validThroughGte } });
81
72
  }
82
73
  return andConditions;
83
74
  }
84
- findProductOffers(params, inclusion) {
85
- return __awaiter(this, void 0, void 0, function* () {
86
- var _a;
87
- const conditions = ProductOfferRepo.CREATE_MONGO_CONDITIONS(params);
88
- let positiveProjectionFields = AVAILABLE_PROJECT_FIELDS;
89
- if (Array.isArray(inclusion) && inclusion.length > 0) {
90
- positiveProjectionFields = inclusion.filter((key) => AVAILABLE_PROJECT_FIELDS.includes(key));
91
- }
92
- else {
93
- throw new factory.errors.ArgumentNull('inclusion', 'inclusion must be specified');
94
- }
95
- const projection = Object.assign({ _id: 0, id: { $toString: '$_id' } }, Object.fromEntries(positiveProjectionFields.map((key) => ([key, 1]))));
96
- const query = this.productOfferModel.find((conditions.length > 0) ? { $and: conditions } : {}, projection);
97
- if (typeof ((_a = params.sort) === null || _a === void 0 ? void 0 : _a.validFrom) === 'number') {
98
- query.sort({ validFrom: params.sort.validFrom });
99
- }
100
- if (typeof params.limit === 'number' && params.limit > 0) {
101
- const page = (typeof params.page === 'number' && params.page > 0) ? params.page : 1;
102
- query.limit(params.limit)
103
- .skip(params.limit * (page - 1));
104
- }
105
- return query.setOptions({ maxTimeMS: settings_1.MONGO_MAX_TIME_MS })
106
- .lean()
107
- .exec();
108
- });
75
+ async findProductOffers(params, inclusion) {
76
+ const conditions = ProductOfferRepo.CREATE_MONGO_CONDITIONS(params);
77
+ let positiveProjectionFields = AVAILABLE_PROJECT_FIELDS;
78
+ if (Array.isArray(inclusion) && inclusion.length > 0) {
79
+ positiveProjectionFields = inclusion.filter((key) => AVAILABLE_PROJECT_FIELDS.includes(key));
80
+ }
81
+ else {
82
+ throw new factory.errors.ArgumentNull('inclusion', 'inclusion must be specified');
83
+ }
84
+ const projection = {
85
+ _id: 0,
86
+ id: { $toString: '$_id' },
87
+ ...Object.fromEntries(positiveProjectionFields.map((key) => ([key, 1])))
88
+ };
89
+ const query = this.productOfferModel.find((conditions.length > 0) ? { $and: conditions } : {}, projection);
90
+ if (typeof params.sort?.validFrom === 'number') {
91
+ query.sort({ validFrom: params.sort.validFrom });
92
+ }
93
+ if (typeof params.limit === 'number' && params.limit > 0) {
94
+ const page = (typeof params.page === 'number' && params.page > 0) ? params.page : 1;
95
+ query.limit(params.limit)
96
+ .skip(params.limit * (page - 1));
97
+ }
98
+ return query.setOptions({ maxTimeMS: settings_1.MONGO_MAX_TIME_MS })
99
+ .lean()
100
+ .exec();
109
101
  }
110
102
  /**
111
103
  * オファーコードとオファーコレクションコードをキーにして冪等置換
112
104
  */
113
- upsertOffersByIdentifier(params, options) {
114
- return __awaiter(this, void 0, void 0, function* () {
115
- const { update } = options;
116
- const bulkWriteOps = [];
117
- const queryFilters = [];
118
- if (Array.isArray(params)) {
119
- params.forEach(({ $set, $unset }) => {
120
- const { availability, identifier, itemOffered, offeredBy, project, validFrom, validThrough, acceptedPaymentMethod, validForMemberTier } = $set;
121
- if (typeof identifier !== 'string' || identifier === '') {
122
- throw new factory.errors.ArgumentNull('identifier');
123
- }
124
- if (typeof itemOffered.identifier !== 'string' || itemOffered.identifier === '') {
125
- throw new factory.errors.ArgumentNull('itemOffered.identifier');
126
- }
127
- // リソースのユニークネスを保証するfilter
128
- const filter = {
129
- 'project.id': { $eq: project.id },
130
- 'itemOffered.identifier': { $eq: itemOffered.identifier },
131
- identifier: { $eq: identifier }
132
- };
133
- queryFilters.push({
134
- 'project.id': { $eq: project.id },
135
- 'itemOffered.identifier': { $eq: itemOffered.identifier },
136
- identifier: { $eq: identifier }
137
- });
138
- if (update === true) {
139
- const setFields = Object.assign(Object.assign({ availability,
140
- validFrom,
141
- validThrough }, (typeof (acceptedPaymentMethod === null || acceptedPaymentMethod === void 0 ? void 0 : acceptedPaymentMethod.typeOf) === 'string') ? { acceptedPaymentMethod } : undefined), (typeof (validForMemberTier === null || validForMemberTier === void 0 ? void 0 : validForMemberTier.typeOf) === 'string') ? { validForMemberTier } : undefined);
142
- const updateFilter = Object.assign({ $set: setFields }, ($unset !== undefined) ? { $unset } : undefined);
143
- const updateOne = {
144
- filter,
145
- update: updateFilter,
146
- upsert: false
147
- };
148
- bulkWriteOps.push({ updateOne });
149
- }
150
- else {
151
- const setOnInsert = Object.assign(Object.assign({ itemOffered, offeredBy, identifier, project, typeOf: factory.offerType.Offer, availability,
152
- validFrom,
153
- validThrough }, (typeof (acceptedPaymentMethod === null || acceptedPaymentMethod === void 0 ? void 0 : acceptedPaymentMethod.typeOf) === 'string') ? { acceptedPaymentMethod } : undefined), (typeof (validForMemberTier === null || validForMemberTier === void 0 ? void 0 : validForMemberTier.typeOf) === 'string') ? { validForMemberTier } : undefined);
154
- const updateFilter = {
155
- $setOnInsert: setOnInsert
156
- };
157
- const updateOne = {
158
- filter,
159
- update: updateFilter,
160
- upsert: true
161
- };
162
- bulkWriteOps.push({ updateOne });
163
- }
105
+ async upsertOffersByIdentifier(params, options) {
106
+ const { update } = options;
107
+ const bulkWriteOps = [];
108
+ const queryFilters = [];
109
+ if (Array.isArray(params)) {
110
+ params.forEach(({ $set, $unset }) => {
111
+ const { availability, identifier, itemOffered, offeredBy, project, validFrom, validThrough, acceptedPaymentMethod, validForMemberTier } = $set;
112
+ if (typeof identifier !== 'string' || identifier === '') {
113
+ throw new factory.errors.ArgumentNull('identifier');
114
+ }
115
+ if (typeof itemOffered.identifier !== 'string' || itemOffered.identifier === '') {
116
+ throw new factory.errors.ArgumentNull('itemOffered.identifier');
117
+ }
118
+ // リソースのユニークネスを保証するfilter
119
+ const filter = {
120
+ 'project.id': { $eq: project.id },
121
+ 'itemOffered.identifier': { $eq: itemOffered.identifier },
122
+ identifier: { $eq: identifier }
123
+ };
124
+ queryFilters.push({
125
+ 'project.id': { $eq: project.id },
126
+ 'itemOffered.identifier': { $eq: itemOffered.identifier },
127
+ identifier: { $eq: identifier }
164
128
  });
165
- }
166
- if (bulkWriteOps.length > 0) {
167
- const bulkWriteResult = yield this.productOfferModel.bulkWrite(bulkWriteOps, { ordered: false });
168
- // modifiedの場合upsertedIdsに含まれないので、idを検索する
169
- const modifiedProductOffers = yield this.productOfferModel.find({ $or: queryFilters }, {
170
- _id: 0,
171
- id: { $toString: '$_id' }
172
- })
173
- .lean()
174
- .exec();
175
- return { bulkWriteResult, modifiedProductOffers };
176
- }
177
- });
129
+ if (update === true) {
130
+ const setFields = {
131
+ availability,
132
+ validFrom,
133
+ validThrough,
134
+ ...(typeof acceptedPaymentMethod?.typeOf === 'string') ? { acceptedPaymentMethod } : undefined,
135
+ ...(typeof validForMemberTier?.typeOf === 'string') ? { validForMemberTier } : undefined
136
+ };
137
+ const updateFilter = {
138
+ $set: setFields,
139
+ ...($unset !== undefined) ? { $unset } : undefined
140
+ };
141
+ const updateOne = {
142
+ filter,
143
+ update: updateFilter,
144
+ upsert: false
145
+ };
146
+ bulkWriteOps.push({ updateOne });
147
+ }
148
+ else {
149
+ const setOnInsert = {
150
+ itemOffered, offeredBy, identifier, project,
151
+ typeOf: factory.offerType.Offer,
152
+ availability,
153
+ validFrom,
154
+ validThrough,
155
+ ...(typeof acceptedPaymentMethod?.typeOf === 'string') ? { acceptedPaymentMethod } : undefined,
156
+ ...(typeof validForMemberTier?.typeOf === 'string') ? { validForMemberTier } : undefined
157
+ };
158
+ const updateFilter = {
159
+ $setOnInsert: setOnInsert
160
+ };
161
+ const updateOne = {
162
+ filter,
163
+ update: updateFilter,
164
+ upsert: true
165
+ };
166
+ bulkWriteOps.push({ updateOne });
167
+ }
168
+ });
169
+ }
170
+ if (bulkWriteOps.length > 0) {
171
+ const bulkWriteResult = await this.productOfferModel.bulkWrite(bulkWriteOps, { ordered: false });
172
+ // modifiedの場合upsertedIdsに含まれないので、idを検索する
173
+ const modifiedProductOffers = await this.productOfferModel.find({ $or: queryFilters }, {
174
+ _id: 0,
175
+ id: { $toString: '$_id' }
176
+ })
177
+ .lean()
178
+ .exec();
179
+ return { bulkWriteResult, modifiedProductOffers };
180
+ }
178
181
  }
179
182
  // public async deleteProductOffersByIds(params: {
180
183
  // project: { id: string };
@@ -194,14 +197,12 @@ class ProductOfferRepo {
194
197
  /**
195
198
  * 販売者の提供するプロダクトオファーを削除する
196
199
  */
197
- deleteProductOffersBySeller(params) {
198
- return __awaiter(this, void 0, void 0, function* () {
199
- return this.productOfferModel.deleteMany({
200
- 'project.id': { $eq: params.project.id },
201
- 'offeredBy.id': { $eq: params.offeredBy.id }
202
- })
203
- .exec();
204
- });
200
+ async deleteProductOffersBySeller(params) {
201
+ return this.productOfferModel.deleteMany({
202
+ 'project.id': { $eq: params.project.id },
203
+ 'offeredBy.id': { $eq: params.offeredBy.id }
204
+ })
205
+ .exec();
205
206
  }
206
207
  }
207
208
  exports.ProductOfferRepo = ProductOfferRepo;
@@ -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.ProjectRepo = void 0;
24
4
  const project_1 = require("./mongoose/schemas/project");
@@ -40,13 +20,13 @@ const AVAILABLE_PROJECT_FIELDS = [
40
20
  * makesOfferについてはsee ProjectMakesOfferRepo
41
21
  */
42
22
  class ProjectRepo {
23
+ projectModel;
43
24
  constructor(connection) {
44
25
  this.projectModel = connection.model(project_1.modelName, (0, project_1.createSchema)());
45
26
  }
46
27
  static CREATE_MONGO_CONDITIONS(params) {
47
- var _a;
48
28
  const andConditions = [];
49
- const idEq = (_a = params.id) === null || _a === void 0 ? void 0 : _a.$eq;
29
+ const idEq = params.id?.$eq;
50
30
  if (typeof idEq === 'string') {
51
31
  andConditions.push({ _id: { $eq: idEq } });
52
32
  }
@@ -63,151 +43,153 @@ class ProjectRepo {
63
43
  }
64
44
  return andConditions;
65
45
  }
66
- findById(params) {
67
- return __awaiter(this, void 0, void 0, function* () {
68
- const project = (yield this.projectFields({
69
- limit: 1,
70
- page: 1,
71
- id: { $eq: params.id }
72
- }, params.inclusion)).shift();
73
- if (project === undefined) {
74
- throw new factory.errors.NotFound(this.projectModel.modelName);
75
- }
76
- return project;
77
- });
46
+ async findById(params) {
47
+ const project = (await this.projectFields({
48
+ limit: 1,
49
+ page: 1,
50
+ id: { $eq: params.id }
51
+ }, params.inclusion)).shift();
52
+ if (project === undefined) {
53
+ throw new factory.errors.NotFound(this.projectModel.modelName);
54
+ }
55
+ return project;
78
56
  }
79
- findAlternateNameById(params) {
80
- return __awaiter(this, void 0, void 0, function* () {
81
- const doc = yield this.projectModel.findOne({ _id: { $eq: params.id } }, { alternateName: 1, _id: 0 })
82
- .lean()
83
- .exec();
84
- if (doc === null) {
85
- throw new factory.errors.NotFound(this.projectModel.modelName);
86
- }
87
- return doc;
88
- });
57
+ async findAlternateNameById(params) {
58
+ const doc = await this.projectModel.findOne({ _id: { $eq: params.id } }, { alternateName: 1, _id: 0 })
59
+ .lean()
60
+ .exec();
61
+ if (doc === null) {
62
+ throw new factory.errors.NotFound(this.projectModel.modelName);
63
+ }
64
+ return doc;
89
65
  }
90
66
  /**
91
67
  * プロジェクト検索
92
68
  */
93
- projectFields(conditions, inclusion) {
94
- return __awaiter(this, void 0, void 0, function* () {
95
- var _a;
96
- const andConditions = ProjectRepo.CREATE_MONGO_CONDITIONS(conditions);
97
- let positiveProjectionFields = AVAILABLE_PROJECT_FIELDS;
98
- if (Array.isArray(inclusion) && inclusion.length > 0) {
99
- positiveProjectionFields = inclusion.filter((key) => AVAILABLE_PROJECT_FIELDS.includes(key));
100
- }
101
- else {
102
- // discontinue(2024-10-09~)
103
- throw new factory.errors.ArgumentNull('inclusion', 'inclusion must be specified');
104
- }
105
- const projection = Object.assign({ _id: 0, id: { $toString: '$_id' } }, Object.fromEntries(positiveProjectionFields.map((key) => ([key, 1]))));
106
- const query = this.projectModel.find((andConditions.length > 0) ? { $and: andConditions } : {}, projection);
107
- if (typeof conditions.limit === 'number' && conditions.limit > 0) {
108
- const page = (typeof conditions.page === 'number' && conditions.page > 0) ? conditions.page : 1;
109
- query.limit(conditions.limit)
110
- .skip(conditions.limit * (page - 1));
111
- }
112
- if (((_a = conditions.sort) === null || _a === void 0 ? void 0 : _a._id) !== undefined) {
113
- query.sort({ _id: conditions.sort._id });
114
- }
115
- return query.setOptions({ maxTimeMS: settings_1.MONGO_MAX_TIME_MS })
116
- .lean() // 2024-08-22~
117
- .exec();
118
- });
69
+ async projectFields(conditions, inclusion) {
70
+ const andConditions = ProjectRepo.CREATE_MONGO_CONDITIONS(conditions);
71
+ let positiveProjectionFields = AVAILABLE_PROJECT_FIELDS;
72
+ if (Array.isArray(inclusion) && inclusion.length > 0) {
73
+ positiveProjectionFields = inclusion.filter((key) => AVAILABLE_PROJECT_FIELDS.includes(key));
74
+ }
75
+ else {
76
+ // discontinue(2024-10-09~)
77
+ throw new factory.errors.ArgumentNull('inclusion', 'inclusion must be specified');
78
+ }
79
+ const projection = {
80
+ _id: 0,
81
+ id: { $toString: '$_id' },
82
+ ...Object.fromEntries(positiveProjectionFields.map((key) => ([key, 1])))
83
+ };
84
+ const query = this.projectModel.find((andConditions.length > 0) ? { $and: andConditions } : {}, projection);
85
+ if (typeof conditions.limit === 'number' && conditions.limit > 0) {
86
+ const page = (typeof conditions.page === 'number' && conditions.page > 0) ? conditions.page : 1;
87
+ query.limit(conditions.limit)
88
+ .skip(conditions.limit * (page - 1));
89
+ }
90
+ if (conditions.sort?._id !== undefined) {
91
+ query.sort({ _id: conditions.sort._id });
92
+ }
93
+ return query.setOptions({ maxTimeMS: settings_1.MONGO_MAX_TIME_MS })
94
+ .lean() // 2024-08-22~
95
+ .exec();
119
96
  }
120
- createById(params) {
121
- return __awaiter(this, void 0, void 0, function* () {
122
- var _a;
123
- const { id } = params, createParams = __rest(params, ["id"]);
124
- if (typeof id !== 'string' || id === '') {
125
- throw new factory.errors.ArgumentNull('id');
126
- }
127
- const result = yield this.projectModel.insertMany(Object.assign(Object.assign({}, createParams), { typeOf: factory.organizationType.Project, _id: id }), { rawResult: true });
128
- const insertedId = (_a = result.insertedIds) === null || _a === void 0 ? void 0 : _a[0];
129
- if (typeof insertedId !== 'string') {
130
- throw new factory.errors.Internal(`project not saved unexpectedly. result:${JSON.stringify(result)}`);
131
- }
132
- return { id: insertedId };
133
- });
97
+ async createById(params) {
98
+ const { id, ...createParams } = params;
99
+ if (typeof id !== 'string' || id === '') {
100
+ throw new factory.errors.ArgumentNull('id');
101
+ }
102
+ const result = await this.projectModel.insertMany({
103
+ ...createParams,
104
+ typeOf: factory.organizationType.Project,
105
+ _id: id
106
+ }, { rawResult: true });
107
+ const insertedId = result.insertedIds?.[0];
108
+ if (typeof insertedId !== 'string') {
109
+ throw new factory.errors.Internal(`project not saved unexpectedly. result:${JSON.stringify(result)}`);
110
+ }
111
+ return { id: insertedId };
134
112
  }
135
- updateById(params) {
136
- return __awaiter(this, void 0, void 0, function* () {
137
- var _a, _b, _c, _d, _e, _f, _g;
138
- let hasMerchantReturnPolicy;
139
- if (typeof ((_a = params.hasMerchantReturnPolicy) === null || _a === void 0 ? void 0 : _a.sameAs) === 'string') {
140
- hasMerchantReturnPolicy = Object.assign({ sameAs: params.hasMerchantReturnPolicy.sameAs, typeOf: 'MerchantReturnPolicy' }, (typeof params.hasMerchantReturnPolicy.identifier === 'string')
141
- ? { identifier: params.hasMerchantReturnPolicy.identifier } : undefined);
142
- }
143
- const includeCustomerAsFindByConfirmationNumberResult = (_b = params.settings) === null || _b === void 0 ? void 0 : _b.includeCustomerAsFindByConfirmationNumberResult;
144
- yield this.projectModel.findOneAndUpdate({ _id: { $eq: params.id } }, Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, (typeof params.alternateName === 'string' && params.alternateName.length > 0)
113
+ async updateById(params) {
114
+ let hasMerchantReturnPolicy;
115
+ if (typeof params.hasMerchantReturnPolicy?.sameAs === 'string') {
116
+ hasMerchantReturnPolicy = {
117
+ sameAs: params.hasMerchantReturnPolicy.sameAs,
118
+ typeOf: 'MerchantReturnPolicy',
119
+ ...(typeof params.hasMerchantReturnPolicy.identifier === 'string')
120
+ ? { identifier: params.hasMerchantReturnPolicy.identifier } : undefined
121
+ };
122
+ }
123
+ const includeCustomerAsFindByConfirmationNumberResult = params.settings?.includeCustomerAsFindByConfirmationNumberResult;
124
+ await this.projectModel.findOneAndUpdate({ _id: { $eq: params.id } }, {
125
+ // updatedAt: new Date(),
126
+ ...(typeof params.alternateName === 'string' && params.alternateName.length > 0)
145
127
  ? { alternateName: params.alternateName }
146
- : undefined), (typeof params.name === 'string' && params.name.length > 0) ? { name: params.name } : undefined), (typeof params.logo === 'string' && params.logo.length > 0) ? { logo: params.logo } : undefined), (typeof ((_e = (_d = (_c = params.settings) === null || _c === void 0 ? void 0 : _c.sendEmailMessage) === null || _d === void 0 ? void 0 : _d.sender) === null || _e === void 0 ? void 0 : _e.email) === 'string')
128
+ : undefined,
129
+ ...(typeof params.name === 'string' && params.name.length > 0) ? { name: params.name } : undefined,
130
+ ...(typeof params.logo === 'string' && params.logo.length > 0) ? { logo: params.logo } : undefined,
131
+ ...(typeof params.settings?.sendEmailMessage?.sender?.email === 'string')
147
132
  ? {
148
133
  'settings.sendEmailMessage': {
149
134
  sender: { email: params.settings.sendEmailMessage.sender.email }
150
135
  }
151
136
  }
152
- : undefined), (typeof ((_f = params.settings) === null || _f === void 0 ? void 0 : _f.sendgridApiKey) === 'string')
137
+ : undefined,
138
+ ...(typeof params.settings?.sendgridApiKey === 'string')
153
139
  ? { 'settings.sendgridApiKey': params.settings.sendgridApiKey }
154
- : undefined), (typeof includeCustomerAsFindByConfirmationNumberResult === 'boolean')
140
+ : undefined,
141
+ ...(typeof includeCustomerAsFindByConfirmationNumberResult === 'boolean')
155
142
  ? { 'settings.includeCustomerAsFindByConfirmationNumberResult': includeCustomerAsFindByConfirmationNumberResult }
156
- : undefined), (typeof ((_g = params.subscription) === null || _g === void 0 ? void 0 : _g.useEventServiceAsProduct) === 'boolean')
143
+ : undefined,
144
+ ...(typeof params.subscription?.useEventServiceAsProduct === 'boolean')
157
145
  ? { 'subscription.useEventServiceAsProduct': params.subscription.useEventServiceAsProduct }
158
- : undefined), (hasMerchantReturnPolicy !== undefined) ? { hasMerchantReturnPolicy } : undefined), { $unset: {
159
- 'settings.cognito': 1 // 廃止(2023-11-10~)
160
- } }), { projection: { _id: 1 } })
161
- .exec();
162
- });
146
+ : undefined,
147
+ ...(hasMerchantReturnPolicy !== undefined) ? { hasMerchantReturnPolicy } : undefined,
148
+ $unset: {
149
+ 'settings.cognito': 1 // 廃止(2023-11-10~)
150
+ }
151
+ }, { projection: { _id: 1 } })
152
+ .exec();
163
153
  }
164
- updateMakesOfferById(params) {
165
- return __awaiter(this, void 0, void 0, function* () {
166
- yield this.projectModel.findOneAndUpdate({ _id: { $eq: params.id } }, {
167
- $set: { makesOffer: params.makesOffer }
168
- }, { projection: { _id: 1 } })
169
- .exec();
170
- });
154
+ async updateMakesOfferById(params) {
155
+ await this.projectModel.findOneAndUpdate({ _id: { $eq: params.id } }, {
156
+ $set: { makesOffer: params.makesOffer }
157
+ }, { projection: { _id: 1 } })
158
+ .exec();
171
159
  }
172
- activateOptionalAggregationSettings(params) {
173
- return __awaiter(this, void 0, void 0, function* () {
174
- yield this.projectModel.findOneAndUpdate({ _id: { $eq: params.id } }, {
175
- $set: {
176
- 'settings.useAggregateEntranceGate': true,
177
- 'settings.useAggregateOffer': true,
178
- 'settings.useOfferRateLimit': true
179
- }
180
- }, { projection: { _id: 1 } })
181
- .exec();
182
- });
160
+ async activateOptionalAggregationSettings(params) {
161
+ await this.projectModel.findOneAndUpdate({ _id: { $eq: params.id } }, {
162
+ $set: {
163
+ 'settings.useAggregateEntranceGate': true,
164
+ 'settings.useAggregateOffer': true,
165
+ 'settings.useOfferRateLimit': true
166
+ }
167
+ }, { projection: { _id: 1 } })
168
+ .exec();
183
169
  }
184
- updateAggregateReservation(params) {
185
- return __awaiter(this, void 0, void 0, function* () {
186
- yield this.projectModel.findOneAndUpdate({ _id: { $eq: params.id } }, {
187
- $set: Object.assign({}, (params.aggregateReservation !== undefined) ? { aggregateReservation: params.aggregateReservation } : undefined)
188
- // $unset: {
189
- // noExistingAttributeName: 1 // $unsetは空だとエラーになるので
190
- // }
191
- }, { new: true, projection: { _id: 1 } })
192
- .exec();
193
- });
170
+ async updateAggregateReservation(params) {
171
+ await this.projectModel.findOneAndUpdate({ _id: { $eq: params.id } }, {
172
+ $set: {
173
+ ...(params.aggregateReservation !== undefined) ? { aggregateReservation: params.aggregateReservation } : undefined
174
+ }
175
+ // $unset: {
176
+ // noExistingAttributeName: 1 // $unsetは空だとエラーになるので
177
+ // }
178
+ }, { new: true, projection: { _id: 1 } })
179
+ .exec();
194
180
  }
195
- deleteById(params) {
196
- return __awaiter(this, void 0, void 0, function* () {
197
- yield this.projectModel.deleteOne({ _id: { $eq: params.id } }, { projection: { _id: 1 } })
198
- .exec();
199
- });
181
+ async deleteById(params) {
182
+ await this.projectModel.deleteOne({ _id: { $eq: params.id } }, { projection: { _id: 1 } })
183
+ .exec();
200
184
  }
201
185
  getCursor(conditions, projection) {
202
186
  return this.projectModel.find(conditions, projection)
203
187
  .sort({ _id: factory.sortType.Ascending })
204
188
  .cursor();
205
189
  }
206
- unsetUnnecessaryFields(params) {
207
- return __awaiter(this, void 0, void 0, function* () {
208
- return this.projectModel.updateMany(params.filter, { $unset: params.$unset }, { timestamps: false })
209
- .exec();
210
- });
190
+ async unsetUnnecessaryFields(params) {
191
+ return this.projectModel.updateMany(params.filter, { $unset: params.$unset }, { timestamps: false })
192
+ .exec();
211
193
  }
212
194
  }
213
195
  exports.ProjectRepo = ProjectRepo;