@unchainedshop/plugins 1.1.9 → 1.2.2

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 (307) hide show
  1. package/jest.config.js +5 -0
  2. package/package.json +15 -9
  3. package/src/files/gridfs/gridfs-adapter.ts +1 -1
  4. package/src/files/gridfs/{gridfs-webhook.js → gridfs-webhook.ts} +4 -3
  5. package/src/files/gridfs/{index.js → index.ts} +0 -0
  6. package/src/files/gridfs/{promisePipe.js → promisePipe.ts} +0 -0
  7. package/src/files/gridfs/{sign.js → sign.ts} +0 -0
  8. package/src/files/minio/minio-adapter.ts +1 -2
  9. package/src/payment/apple-iap/adapter.ts +2 -2
  10. package/src/payment/bity/adapter.ts +3 -3
  11. package/src/payment/braintree.ts +2 -2
  12. package/src/payment/cryptopay.ts +1 -1
  13. package/src/payment/datatrans-v2/middleware.ts +1 -1
  14. package/src/payment/postfinance-checkout/middleware.ts +1 -1
  15. package/src/payment/stripe.ts +2 -2
  16. package/src/payment/worldline-saferpay/worldline-saferpay-client/index.ts +3 -3
  17. package/src/pricing/product-discount.ts +1 -1
  18. package/src/pricing/product-price-ECB-interbank-exchange.ts +1 -1
  19. package/src/pricing/product-price-cryptopay.ts +1 -1
  20. package/src/worker/email.ts +1 -0
  21. package/tsconfig.json +26 -5
  22. package/lib/delivery/pick-mup.d.ts +0 -1
  23. package/lib/delivery/pick-mup.js +0 -98
  24. package/lib/delivery/pick-mup.js.map +0 -1
  25. package/lib/delivery/post.d.ts +0 -1
  26. package/lib/delivery/post.js +0 -23
  27. package/lib/delivery/post.js.map +0 -1
  28. package/lib/delivery/send-message.d.ts +0 -1
  29. package/lib/delivery/send-message.js +0 -41
  30. package/lib/delivery/send-message.js.map +0 -1
  31. package/lib/delivery/stores.d.ts +0 -1
  32. package/lib/delivery/stores.js +0 -39
  33. package/lib/delivery/stores.js.map +0 -1
  34. package/lib/enrollments/licensed.d.ts +0 -1
  35. package/lib/enrollments/licensed.js +0 -40
  36. package/lib/enrollments/licensed.js.map +0 -1
  37. package/lib/events/node-event-emitter.d.ts +0 -1
  38. package/lib/events/node-event-emitter.js +0 -16
  39. package/lib/events/node-event-emitter.js.map +0 -1
  40. package/lib/events/redis.d.ts +0 -1
  41. package/lib/events/redis.js +0 -24
  42. package/lib/events/redis.js.map +0 -1
  43. package/lib/files/gridfs/gridfs-adapter.d.ts +0 -2
  44. package/lib/files/gridfs/gridfs-adapter.js +0 -106
  45. package/lib/files/gridfs/gridfs-adapter.js.map +0 -1
  46. package/lib/files/gridfs/gridfs-webhook.d.ts +0 -2
  47. package/lib/files/gridfs/gridfs-webhook.js +0 -54
  48. package/lib/files/gridfs/gridfs-webhook.js.map +0 -1
  49. package/lib/files/gridfs/index.d.ts +0 -8
  50. package/lib/files/gridfs/index.js +0 -21
  51. package/lib/files/gridfs/index.js.map +0 -1
  52. package/lib/files/gridfs/promisePipe.d.ts +0 -2
  53. package/lib/files/gridfs/promisePipe.js +0 -21
  54. package/lib/files/gridfs/promisePipe.js.map +0 -1
  55. package/lib/files/gridfs/sign.d.ts +0 -2
  56. package/lib/files/gridfs/sign.js +0 -12
  57. package/lib/files/gridfs/sign.js.map +0 -1
  58. package/lib/files/minio/minio-adapter.d.ts +0 -4
  59. package/lib/files/minio/minio-adapter.js +0 -166
  60. package/lib/files/minio/minio-adapter.js.map +0 -1
  61. package/lib/files/minio/minio-webhook.d.ts +0 -2
  62. package/lib/files/minio/minio-webhook.js +0 -47
  63. package/lib/files/minio/minio-webhook.js.map +0 -1
  64. package/lib/filters/local-search.d.ts +0 -3
  65. package/lib/filters/local-search.js +0 -84
  66. package/lib/filters/local-search.js.map +0 -1
  67. package/lib/filters/strict-equal.d.ts +0 -1
  68. package/lib/filters/strict-equal.js +0 -25
  69. package/lib/filters/strict-equal.js.map +0 -1
  70. package/lib/payment/apple-iap/adapter.d.ts +0 -2
  71. package/lib/payment/apple-iap/adapter.js +0 -286
  72. package/lib/payment/apple-iap/adapter.js.map +0 -1
  73. package/lib/payment/apple-iap/db/AppleTransactionsCollection.d.ts +0 -7
  74. package/lib/payment/apple-iap/db/AppleTransactionsCollection.js +0 -5
  75. package/lib/payment/apple-iap/db/AppleTransactionsCollection.js.map +0 -1
  76. package/lib/payment/apple-iap/index.d.ts +0 -3
  77. package/lib/payment/apple-iap/index.js +0 -4
  78. package/lib/payment/apple-iap/index.js.map +0 -1
  79. package/lib/payment/apple-iap/module/configureAppleTransactionsModule.d.ts +0 -9
  80. package/lib/payment/apple-iap/module/configureAppleTransactionsModule.js +0 -18
  81. package/lib/payment/apple-iap/module/configureAppleTransactionsModule.js.map +0 -1
  82. package/lib/payment/bity/adapter.d.ts +0 -2
  83. package/lib/payment/bity/adapter.js +0 -318
  84. package/lib/payment/bity/adapter.js.map +0 -1
  85. package/lib/payment/bity/db/BityCredentialsCollection.d.ts +0 -11
  86. package/lib/payment/bity/db/BityCredentialsCollection.js +0 -5
  87. package/lib/payment/bity/db/BityCredentialsCollection.js.map +0 -1
  88. package/lib/payment/bity/index.d.ts +0 -3
  89. package/lib/payment/bity/index.js +0 -4
  90. package/lib/payment/bity/index.js.map +0 -1
  91. package/lib/payment/bity/module/configureBityModule.d.ts +0 -11
  92. package/lib/payment/bity/module/configureBityModule.js +0 -33
  93. package/lib/payment/bity/module/configureBityModule.js.map +0 -1
  94. package/lib/payment/braintree.d.ts +0 -1
  95. package/lib/payment/braintree.js +0 -129
  96. package/lib/payment/braintree.js.map +0 -1
  97. package/lib/payment/cryptopay.d.ts +0 -2
  98. package/lib/payment/cryptopay.js +0 -161
  99. package/lib/payment/cryptopay.js.map +0 -1
  100. package/lib/payment/datatrans-v2/api/authorize.d.ts +0 -2
  101. package/lib/payment/datatrans-v2/api/authorize.js +0 -12
  102. package/lib/payment/datatrans-v2/api/authorize.js.map +0 -1
  103. package/lib/payment/datatrans-v2/api/authorizeAuthenticated.d.ts +0 -2
  104. package/lib/payment/datatrans-v2/api/authorizeAuthenticated.js +0 -11
  105. package/lib/payment/datatrans-v2/api/authorizeAuthenticated.js.map +0 -1
  106. package/lib/payment/datatrans-v2/api/cancel.d.ts +0 -2
  107. package/lib/payment/datatrans-v2/api/cancel.js +0 -10
  108. package/lib/payment/datatrans-v2/api/cancel.js.map +0 -1
  109. package/lib/payment/datatrans-v2/api/index.d.ts +0 -19
  110. package/lib/payment/datatrans-v2/api/index.js +0 -24
  111. package/lib/payment/datatrans-v2/api/index.js.map +0 -1
  112. package/lib/payment/datatrans-v2/api/init.d.ts +0 -2
  113. package/lib/payment/datatrans-v2/api/init.js +0 -31
  114. package/lib/payment/datatrans-v2/api/init.js.map +0 -1
  115. package/lib/payment/datatrans-v2/api/makeFetcher.d.ts +0 -2
  116. package/lib/payment/datatrans-v2/api/makeFetcher.js +0 -41
  117. package/lib/payment/datatrans-v2/api/makeFetcher.js.map +0 -1
  118. package/lib/payment/datatrans-v2/api/secureFields.d.ts +0 -2
  119. package/lib/payment/datatrans-v2/api/secureFields.js +0 -14
  120. package/lib/payment/datatrans-v2/api/secureFields.js.map +0 -1
  121. package/lib/payment/datatrans-v2/api/settle.d.ts +0 -2
  122. package/lib/payment/datatrans-v2/api/settle.js +0 -10
  123. package/lib/payment/datatrans-v2/api/settle.js.map +0 -1
  124. package/lib/payment/datatrans-v2/api/status.d.ts +0 -2
  125. package/lib/payment/datatrans-v2/api/status.js +0 -7
  126. package/lib/payment/datatrans-v2/api/status.js.map +0 -1
  127. package/lib/payment/datatrans-v2/api/validate.d.ts +0 -2
  128. package/lib/payment/datatrans-v2/api/validate.js +0 -10
  129. package/lib/payment/datatrans-v2/api/validate.js.map +0 -1
  130. package/lib/payment/datatrans-v2/generateSignature.d.ts +0 -10
  131. package/lib/payment/datatrans-v2/generateSignature.js +0 -19
  132. package/lib/payment/datatrans-v2/generateSignature.js.map +0 -1
  133. package/lib/payment/datatrans-v2/getPaths.d.ts +0 -9
  134. package/lib/payment/datatrans-v2/getPaths.js +0 -9
  135. package/lib/payment/datatrans-v2/getPaths.js.map +0 -1
  136. package/lib/payment/datatrans-v2/index.d.ts +0 -2
  137. package/lib/payment/datatrans-v2/index.js +0 -385
  138. package/lib/payment/datatrans-v2/index.js.map +0 -1
  139. package/lib/payment/datatrans-v2/middleware.d.ts +0 -2
  140. package/lib/payment/datatrans-v2/middleware.js +0 -113
  141. package/lib/payment/datatrans-v2/middleware.js.map +0 -1
  142. package/lib/payment/datatrans-v2/parseRegistrationData.d.ts +0 -11
  143. package/lib/payment/datatrans-v2/parseRegistrationData.js +0 -26
  144. package/lib/payment/datatrans-v2/parseRegistrationData.js.map +0 -1
  145. package/lib/payment/datatrans-v2/roundedAmountFromOrder.d.ts +0 -5
  146. package/lib/payment/datatrans-v2/roundedAmountFromOrder.js +0 -10
  147. package/lib/payment/datatrans-v2/roundedAmountFromOrder.js.map +0 -1
  148. package/lib/payment/datatrans-v2/splitProperties.d.ts +0 -8
  149. package/lib/payment/datatrans-v2/splitProperties.js +0 -58
  150. package/lib/payment/datatrans-v2/splitProperties.js.map +0 -1
  151. package/lib/payment/invoice-prepaid.d.ts +0 -1
  152. package/lib/payment/invoice-prepaid.js +0 -30
  153. package/lib/payment/invoice-prepaid.js.map +0 -1
  154. package/lib/payment/invoice.d.ts +0 -1
  155. package/lib/payment/invoice.js +0 -27
  156. package/lib/payment/invoice.js.map +0 -1
  157. package/lib/payment/paypal-checkout.d.ts +0 -1
  158. package/lib/payment/paypal-checkout.js +0 -82
  159. package/lib/payment/paypal-checkout.js.map +0 -1
  160. package/lib/payment/postfinance-checkout/api.d.ts +0 -11
  161. package/lib/payment/postfinance-checkout/api.js +0 -109
  162. package/lib/payment/postfinance-checkout/api.js.map +0 -1
  163. package/lib/payment/postfinance-checkout/index.d.ts +0 -2
  164. package/lib/payment/postfinance-checkout/index.js +0 -187
  165. package/lib/payment/postfinance-checkout/index.js.map +0 -1
  166. package/lib/payment/postfinance-checkout/middleware.d.ts +0 -2
  167. package/lib/payment/postfinance-checkout/middleware.js +0 -44
  168. package/lib/payment/postfinance-checkout/middleware.js.map +0 -1
  169. package/lib/payment/postfinance-checkout/types.d.ts +0 -23
  170. package/lib/payment/postfinance-checkout/types.js +0 -12
  171. package/lib/payment/postfinance-checkout/types.js.map +0 -1
  172. package/lib/payment/postfinance-checkout/utils.d.ts +0 -3
  173. package/lib/payment/postfinance-checkout/utils.js +0 -20
  174. package/lib/payment/postfinance-checkout/utils.js.map +0 -1
  175. package/lib/payment/stripe.d.ts +0 -2
  176. package/lib/payment/stripe.js +0 -217
  177. package/lib/payment/stripe.js.map +0 -1
  178. package/lib/payment/worldline-saferpay/index.d.ts +0 -1
  179. package/lib/payment/worldline-saferpay/index.js +0 -112
  180. package/lib/payment/worldline-saferpay/index.js.map +0 -1
  181. package/lib/payment/worldline-saferpay/worldline-saferpay-client/api/SaferpayClient.d.ts +0 -14
  182. package/lib/payment/worldline-saferpay/worldline-saferpay-client/api/SaferpayClient.js +0 -29
  183. package/lib/payment/worldline-saferpay/worldline-saferpay-client/api/SaferpayClient.js.map +0 -1
  184. package/lib/payment/worldline-saferpay/worldline-saferpay-client/api/SaferpayConnection.d.ts +0 -9
  185. package/lib/payment/worldline-saferpay/worldline-saferpay-client/api/SaferpayConnection.js +0 -28
  186. package/lib/payment/worldline-saferpay/worldline-saferpay-client/api/SaferpayConnection.js.map +0 -1
  187. package/lib/payment/worldline-saferpay/worldline-saferpay-client/index.d.ts +0 -4
  188. package/lib/payment/worldline-saferpay/worldline-saferpay-client/index.js +0 -2
  189. package/lib/payment/worldline-saferpay/worldline-saferpay-client/index.js.map +0 -1
  190. package/lib/payment/worldline-saferpay/worldline-saferpay-client/models/PaymentMethods.d.ts +0 -1
  191. package/lib/payment/worldline-saferpay/worldline-saferpay-client/models/PaymentMethods.js +0 -2
  192. package/lib/payment/worldline-saferpay/worldline-saferpay-client/models/PaymentMethods.js.map +0 -1
  193. package/lib/payment/worldline-saferpay/worldline-saferpay-client/models/PaymentPageAssert.d.ts +0 -73
  194. package/lib/payment/worldline-saferpay/worldline-saferpay-client/models/PaymentPageAssert.js +0 -2
  195. package/lib/payment/worldline-saferpay/worldline-saferpay-client/models/PaymentPageAssert.js.map +0 -1
  196. package/lib/payment/worldline-saferpay/worldline-saferpay-client/models/PaymentPageInitialize.d.ts +0 -53
  197. package/lib/payment/worldline-saferpay/worldline-saferpay-client/models/PaymentPageInitialize.js +0 -2
  198. package/lib/payment/worldline-saferpay/worldline-saferpay-client/models/PaymentPageInitialize.js.map +0 -1
  199. package/lib/payment/worldline-saferpay/worldline-saferpay-client/models/Request.d.ts +0 -13
  200. package/lib/payment/worldline-saferpay/worldline-saferpay-client/models/Request.js +0 -2
  201. package/lib/payment/worldline-saferpay/worldline-saferpay-client/models/Request.js.map +0 -1
  202. package/lib/payment/worldline-saferpay/worldline-saferpay-client/models/Response.d.ts +0 -9
  203. package/lib/payment/worldline-saferpay/worldline-saferpay-client/models/Response.js +0 -2
  204. package/lib/payment/worldline-saferpay/worldline-saferpay-client/models/Response.js.map +0 -1
  205. package/lib/payment/worldline-saferpay/worldline-saferpay-client/models/Transaction.d.ts +0 -5
  206. package/lib/payment/worldline-saferpay/worldline-saferpay-client/models/Transaction.js +0 -2
  207. package/lib/payment/worldline-saferpay/worldline-saferpay-client/models/Transaction.js.map +0 -1
  208. package/lib/payment/worldline-saferpay/worldline-saferpay-client/models/TransactionCancel.d.ts +0 -13
  209. package/lib/payment/worldline-saferpay/worldline-saferpay-client/models/TransactionCancel.js +0 -2
  210. package/lib/payment/worldline-saferpay/worldline-saferpay-client/models/TransactionCancel.js.map +0 -1
  211. package/lib/pricing/delivery-swiss-tax.d.ts +0 -15
  212. package/lib/pricing/delivery-swiss-tax.js +0 -98
  213. package/lib/pricing/delivery-swiss-tax.js.map +0 -1
  214. package/lib/pricing/discount-100-off.d.ts +0 -1
  215. package/lib/pricing/discount-100-off.js +0 -34
  216. package/lib/pricing/discount-100-off.js.map +0 -1
  217. package/lib/pricing/discount-half-price-manual.d.ts +0 -1
  218. package/lib/pricing/discount-half-price-manual.js +0 -34
  219. package/lib/pricing/discount-half-price-manual.js.map +0 -1
  220. package/lib/pricing/discount-half-price.d.ts +0 -1
  221. package/lib/pricing/discount-half-price.js +0 -37
  222. package/lib/pricing/discount-half-price.js.map +0 -1
  223. package/lib/pricing/free-delivery.d.ts +0 -2
  224. package/lib/pricing/free-delivery.js +0 -26
  225. package/lib/pricing/free-delivery.js.map +0 -1
  226. package/lib/pricing/free-payment.d.ts +0 -2
  227. package/lib/pricing/free-payment.js +0 -26
  228. package/lib/pricing/free-payment.js.map +0 -1
  229. package/lib/pricing/order-delivery.d.ts +0 -1
  230. package/lib/pricing/order-delivery.js +0 -33
  231. package/lib/pricing/order-delivery.js.map +0 -1
  232. package/lib/pricing/order-discount.d.ts +0 -1
  233. package/lib/pricing/order-discount.js +0 -110
  234. package/lib/pricing/order-discount.js.map +0 -1
  235. package/lib/pricing/order-items-discount.d.ts +0 -1
  236. package/lib/pricing/order-items-discount.js +0 -88
  237. package/lib/pricing/order-items-discount.js.map +0 -1
  238. package/lib/pricing/order-items.d.ts +0 -1
  239. package/lib/pricing/order-items.js +0 -44
  240. package/lib/pricing/order-items.js.map +0 -1
  241. package/lib/pricing/order-payment.d.ts +0 -1
  242. package/lib/pricing/order-payment.js +0 -33
  243. package/lib/pricing/order-payment.js.map +0 -1
  244. package/lib/pricing/product-catalog-price.d.ts +0 -1
  245. package/lib/pricing/product-catalog-price.js +0 -37
  246. package/lib/pricing/product-catalog-price.js.map +0 -1
  247. package/lib/pricing/product-discount.d.ts +0 -1
  248. package/lib/pricing/product-discount.js +0 -55
  249. package/lib/pricing/product-discount.js.map +0 -1
  250. package/lib/pricing/product-price-ECB-interbank-exchange.d.ts +0 -1
  251. package/lib/pricing/product-price-ECB-interbank-exchange.js +0 -90
  252. package/lib/pricing/product-price-ECB-interbank-exchange.js.map +0 -1
  253. package/lib/pricing/product-price-coinbase-exchange.d.ts +0 -1
  254. package/lib/pricing/product-price-coinbase-exchange.js +0 -60
  255. package/lib/pricing/product-price-coinbase-exchange.js.map +0 -1
  256. package/lib/pricing/product-price-cryptopay.d.ts +0 -2
  257. package/lib/pricing/product-price-cryptopay.js +0 -23
  258. package/lib/pricing/product-price-cryptopay.js.map +0 -1
  259. package/lib/pricing/product-price-rateconversion.d.ts +0 -1
  260. package/lib/pricing/product-price-rateconversion.js +0 -51
  261. package/lib/pricing/product-price-rateconversion.js.map +0 -1
  262. package/lib/pricing/product-price-round.d.ts +0 -11
  263. package/lib/pricing/product-price-round.js +0 -54
  264. package/lib/pricing/product-price-round.js.map +0 -1
  265. package/lib/pricing/product-swiss-tax.d.ts +0 -13
  266. package/lib/pricing/product-swiss-tax.js +0 -102
  267. package/lib/pricing/product-swiss-tax.js.map +0 -1
  268. package/lib/pricing/utils/cache.d.ts +0 -8
  269. package/lib/pricing/utils/cache.js +0 -28
  270. package/lib/pricing/utils/cache.js.map +0 -1
  271. package/lib/quotations/manual.d.ts +0 -1
  272. package/lib/quotations/manual.js +0 -21
  273. package/lib/quotations/manual.js.map +0 -1
  274. package/lib/warehousing/google-sheets.d.ts +0 -1
  275. package/lib/warehousing/google-sheets.js +0 -153
  276. package/lib/warehousing/google-sheets.js.map +0 -1
  277. package/lib/warehousing/store.d.ts +0 -1
  278. package/lib/warehousing/store.js +0 -33
  279. package/lib/warehousing/store.js.map +0 -1
  280. package/lib/worker/BulkImportWorker.d.ts +0 -2
  281. package/lib/worker/BulkImportWorker.js +0 -91
  282. package/lib/worker/BulkImportWorker.js.map +0 -1
  283. package/lib/worker/GenerateOrderWorker.d.ts +0 -1
  284. package/lib/worker/GenerateOrderWorker.js +0 -110
  285. package/lib/worker/GenerateOrderWorker.js.map +0 -1
  286. package/lib/worker/MessageWorker.js +0 -45
  287. package/lib/worker/MessageWorker.js.map +0 -1
  288. package/lib/worker/ZombieKillerWorker.d.ts +0 -7
  289. package/lib/worker/ZombieKillerWorker.js +0 -88
  290. package/lib/worker/ZombieKillerWorker.js.map +0 -1
  291. package/lib/worker/email.d.ts +0 -1
  292. package/lib/worker/email.js +0 -96
  293. package/lib/worker/email.js.map +0 -1
  294. package/lib/worker/external.d.ts +0 -2
  295. package/lib/worker/external.js +0 -13
  296. package/lib/worker/external.js.map +0 -1
  297. package/lib/worker/heartbeat.d.ts +0 -1
  298. package/lib/worker/heartbeat.js +0 -32
  299. package/lib/worker/heartbeat.js.map +0 -1
  300. package/lib/worker/http-request.d.ts +0 -8
  301. package/lib/worker/http-request.js +0 -61
  302. package/lib/worker/http-request.js.map +0 -1
  303. package/lib/worker/sms.d.ts +0 -1
  304. package/lib/worker/sms.js +0 -69
  305. package/lib/worker/sms.js.map +0 -1
  306. package/license +0 -274
  307. package/tsconfig.build.json +0 -34
@@ -1 +0,0 @@
1
- {"version":3,"file":"product-price-round.js","sourceRoot":"","sources":["../../src/pricing/product-price-round.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAErE,MAAM,WAAW,GAAG,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,CACvC,KAAK,GAAG,SAAS,KAAK,SAAS,GAAG,CAAC;IACjC,CAAC,CAAC,KAAK,GAAG,SAAS,GAAG,CAAC;IACvB,CAAC,CAAC,KAAK,GAAG,CAAC,SAAS,GAAG,CAAC,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC;AAShD,MAAM,yBAAyB,GAAuB;IACpD,cAAc,EAAE,EAAE;IAClB,gBAAgB,EAAE,EAAE;IACpB,IAAI,EAAE,EAAE;CACT,CAAC;AAEF,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,EAC5C,cAAc,EACd,gBAAgB,EAChB,IAAI,GACe,EAAE,EAAE;IACvB,IAAI,gBAAgB;QAAE,yBAAyB,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;IACpF,IAAI,cAAc;QAAE,yBAAyB,CAAC,cAAc,GAAG,cAAc,CAAC;IAC9E,IAAI,IAAI,EAAE,MAAM;QAAE,yBAAyB,CAAC,IAAI,GAAG,IAAI,CAAC;AAC1D,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAE1B;IACF,GAAG,qBAAqB;IAExB,GAAG,EAAE,oCAAoC;IACzC,OAAO,EAAE,KAAK;IACd,KAAK,EAAE,kDAAkD;IACzD,UAAU,EAAE,CAAC;IAEb,cAAc,EAAE,GAAG,EAAE;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,SAAS,EAAE,6BAA6B;IAExC,OAAO,EAAE,CAAC,MAAM,EAAE,EAAE;QAClB,MAAM,cAAc,GAAG,qBAAqB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAE7D,OAAO;YACL,GAAG,cAAc;YAEjB,SAAS,EAAE,KAAK,IAAI,EAAE;gBACpB,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC;gBAC9C,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,gBAAgB,EAAE,GAAG,yBAAyB,CAAC;gBAC7E,MAAM,EAAE,WAAW,GAAG,EAAE,EAAE,GAAG,MAAM,CAAC,gBAAgB,CAAC;gBAErD,IAAI,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;oBAAE,OAAO,cAAc,CAAC,SAAS,EAAE,CAAC;gBAEtE,MAAM,cAAc,GAAG,cAAc,EAAE,CAAC,QAAQ,CAAC,IAAI,gBAAgB,CAAC;gBAEtE,IAAI,WAAW,EAAE,MAAM,IAAI,cAAc,EAAE;oBACzC,MAAM,CAAC,YAAY,CAAC,GAAG,WAAW,CAAC;oBACnC,cAAc,CAAC,WAAW,EAAE,CAAC,gBAAgB,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;oBACvE,cAAc,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC;wBACnC,MAAM,EAAE,WAAW,CAAC,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC,GAAG,QAAQ;wBACnE,SAAS,EAAE,YAAY,CAAC,SAAS;wBACjC,UAAU,EAAE,YAAY,CAAC,UAAU;wBACnC,IAAI,EAAE,EAAE,OAAO,EAAE,iBAAiB,CAAC,GAAG,EAAE;qBACzC,CAAC,CAAC;iBACJ;gBAED,OAAO,cAAc,CAAC,SAAS,EAAE,CAAC;YACpC,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC"}
@@ -1,13 +0,0 @@
1
- export declare const SwissTaxCategories: {
2
- DEFAULT: {
3
- rate: (date: any) => 0.08 | 0.077;
4
- };
5
- REDUCED: {
6
- tag: string;
7
- rate: () => number;
8
- };
9
- SPECIAL: {
10
- tag: string;
11
- rate: () => number;
12
- };
13
- };
@@ -1,102 +0,0 @@
1
- import moment from 'moment';
2
- import { ProductPricingDirector, ProductPricingAdapter } from '@unchainedshop/core-products';
3
- // https://www.ch.ch/de/mehrwertsteuersatz-schweiz/
4
- export const SwissTaxCategories = {
5
- DEFAULT: {
6
- rate: (date) => {
7
- const referenceDate = moment(date);
8
- if (referenceDate.isBefore('2018-01-01')) {
9
- return 0.08;
10
- }
11
- return 0.077;
12
- },
13
- },
14
- REDUCED: {
15
- tag: 'swiss-tax-category:reduced',
16
- rate: () => {
17
- return 0.025;
18
- },
19
- },
20
- SPECIAL: {
21
- tag: 'swiss-tax-category:special',
22
- rate: () => {
23
- return 0.037;
24
- },
25
- },
26
- };
27
- const getTaxRate = (context) => {
28
- const date = context.order && context.order.ordered ? new Date(context.order.ordered) : new Date();
29
- const { product } = context;
30
- if (product.tags?.includes(SwissTaxCategories.REDUCED.tag)) {
31
- return SwissTaxCategories.REDUCED.rate();
32
- }
33
- if (product.tags?.includes(SwissTaxCategories.SPECIAL.tag)) {
34
- return SwissTaxCategories.SPECIAL.rate();
35
- }
36
- return SwissTaxCategories.DEFAULT.rate(date);
37
- };
38
- const isDeliveryAddressInSwitzerland = async ({ order, country, modules }) => {
39
- let countryCode = country?.toUpperCase().trim();
40
- if (order) {
41
- const orderDelivery = await modules.orders.deliveries.findDelivery({
42
- orderDeliveryId: order.deliveryId,
43
- });
44
- const address = orderDelivery?.context?.address || order.billingAddress;
45
- if (address?.countryCode > '') {
46
- countryCode = address.countryCode?.toUpperCase().trim();
47
- }
48
- }
49
- return countryCode === 'CH' || countryCode === 'LI';
50
- };
51
- const ProductSwissTax = {
52
- ...ProductPricingAdapter,
53
- key: 'shop.unchained.pricing.product-swiss-tax',
54
- version: '1.0',
55
- label: 'Apply Swiss Tax on Product',
56
- orderIndex: 20,
57
- isActivatedFor: () => {
58
- return true;
59
- },
60
- actions: (params) => {
61
- const pricingAdapter = ProductPricingAdapter.actions(params);
62
- const { context } = params;
63
- return {
64
- ...pricingAdapter,
65
- calculate: async () => {
66
- if (!(await isDeliveryAddressInSwitzerland(context))) {
67
- return pricingAdapter.calculate();
68
- }
69
- const taxRate = getTaxRate(context);
70
- ProductPricingAdapter.log(`ProductSwissTax -> Tax Multiplicator: ${taxRate}`);
71
- params.calculationSheet.filterBy({ isTaxable: true }).forEach(({ isNetPrice, ...row }) => {
72
- if (!isNetPrice) {
73
- const taxAmount = row.amount - row.amount / (1 + taxRate);
74
- pricingAdapter.resultSheet().calculation.push({
75
- ...row,
76
- amount: -taxAmount,
77
- isTaxable: false,
78
- isNetPrice: false,
79
- meta: { adapter: ProductSwissTax.key },
80
- });
81
- pricingAdapter.resultSheet().addTax({
82
- amount: taxAmount,
83
- rate: taxRate,
84
- meta: { adapter: ProductSwissTax.key },
85
- });
86
- }
87
- else {
88
- const taxAmount = row.amount * taxRate;
89
- pricingAdapter.resultSheet().addTax({
90
- amount: taxAmount,
91
- rate: taxRate,
92
- meta: { adapter: ProductSwissTax.key },
93
- });
94
- }
95
- });
96
- return pricingAdapter.calculate();
97
- },
98
- };
99
- },
100
- };
101
- ProductPricingDirector.registerAdapter(ProductSwissTax);
102
- //# sourceMappingURL=product-swiss-tax.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"product-swiss-tax.js","sourceRoot":"","sources":["../../src/pricing/product-swiss-tax.ts"],"names":[],"mappings":"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"}
@@ -1,8 +0,0 @@
1
- export default Cache;
2
- declare class Cache {
3
- constructor(ttlSeconds?: number);
4
- cache: any;
5
- get(key: any, currentFuntion: any): any;
6
- del(keys: any): void;
7
- flushAll(): void;
8
- }
@@ -1,28 +0,0 @@
1
- import 'abort-controller/polyfill';
2
- import LRUCache from 'lru-cache';
3
- class Cache {
4
- constructor(ttlSeconds = 60) {
5
- this.cache = new LRUCache({
6
- max: 500,
7
- ttl: ttlSeconds * 1000,
8
- });
9
- }
10
- get(key, currentFuntion) {
11
- const value = this.cache.get(key);
12
- if (value) {
13
- return Promise.resolve(value);
14
- }
15
- return currentFuntion().then((result) => {
16
- this.cache.set(key, result);
17
- return result;
18
- });
19
- }
20
- del(keys) {
21
- this.cache.del(keys);
22
- }
23
- flushAll() {
24
- this.cache.reset();
25
- }
26
- }
27
- export default Cache;
28
- //# sourceMappingURL=cache.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cache.js","sourceRoot":"","sources":["../../../src/pricing/utils/cache.js"],"names":[],"mappings":"AAAA,OAAO,2BAA2B,CAAC;AACnC,OAAO,QAAQ,MAAM,WAAW,CAAC;AAEjC,MAAM,KAAK;IACT,YAAY,UAAU,GAAG,EAAE;QACzB,IAAI,CAAC,KAAK,GAAG,IAAI,QAAQ,CAAC;YACxB,GAAG,EAAE,GAAG;YACR,GAAG,EAAE,UAAU,GAAG,IAAI;SACvB,CAAC,CAAC;IACL,CAAC;IAED,GAAG,CAAC,GAAG,EAAE,cAAc;QACrB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAClC,IAAI,KAAK,EAAE;YACT,OAAO,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;SAC/B;QACD,OAAO,cAAc,EAAE,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;YACtC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YAC5B,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,GAAG,CAAC,IAAI;QACN,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACvB,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;CACF;AAED,eAAe,KAAK,CAAC"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,21 +0,0 @@
1
- import { QuotationDirector, QuotationAdapter } from '@unchainedshop/core-quotations';
2
- const ManualOffering = {
3
- ...QuotationAdapter,
4
- key: 'shop.unchained.quotations.manual',
5
- version: '1.0',
6
- label: 'Manual Offerings',
7
- orderIndex: 0,
8
- isActivatedFor: () => true,
9
- actions: (params) => {
10
- return {
11
- ...QuotationAdapter.actions(params),
12
- quote: async () => {
13
- return {
14
- expires: new Date(new Date().getTime() + 3600 * 1000),
15
- };
16
- },
17
- };
18
- },
19
- };
20
- QuotationDirector.registerAdapter(ManualOffering);
21
- //# sourceMappingURL=manual.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"manual.js","sourceRoot":"","sources":["../../src/quotations/manual.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAErF,MAAM,cAAc,GAAsB;IACxC,GAAG,gBAAgB;IAEnB,GAAG,EAAE,kCAAkC;IACvC,OAAO,EAAE,KAAK;IACd,KAAK,EAAE,kBAAkB;IACzB,UAAU,EAAE,CAAC;IAEb,cAAc,EAAE,GAAG,EAAE,CAAC,IAAI;IAE1B,OAAO,EAAE,CAAC,MAAM,EAAE,EAAE;QAClB,OAAO;YACL,GAAG,gBAAgB,CAAC,OAAO,CAAC,MAAM,CAAC;YAEnC,KAAK,EAAE,KAAK,IAAI,EAAE;gBAChB,OAAO;oBACL,OAAO,EAAE,IAAI,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;iBACtD,CAAC;YACJ,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC;AAEF,iBAAiB,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC"}
@@ -1 +0,0 @@
1
- import 'abort-controller/polyfill';
@@ -1,153 +0,0 @@
1
- import { WarehousingDirector, WarehousingAdapter, WarehousingProviderType, } from '@unchainedshop/core-warehousing';
2
- import Sheets from 'node-sheets';
3
- import { log, LogLevel } from '@unchainedshop/logger';
4
- import 'abort-controller/polyfill';
5
- import LRU from 'lru-cache';
6
- const { NODE_ENV, GOOGLE_SHEETS_ID, GOOGLE_SHEETS_PRIVATE_KEY_DATA } = process.env;
7
- const ttl = NODE_ENV === 'production' ? 1000 * 60 * 60 : 0; // 1 hour or 1 second
8
- const downloadSpreadsheet = async () => {
9
- if (!GOOGLE_SHEETS_PRIVATE_KEY_DATA || !GOOGLE_SHEETS_ID)
10
- return null;
11
- try {
12
- // https://docs.google.com/spreadsheets/d/GOOGLE_SHEETS_ID/edit?usp=sharing
13
- const gs = new Sheets(GOOGLE_SHEETS_ID);
14
- const authData = JSON.parse(GOOGLE_SHEETS_PRIVATE_KEY_DATA);
15
- await gs.authorizeJWT(authData);
16
- const delivery = await gs.tables('delivery!A:ZZZ');
17
- const inventory = await gs.tables('inventory!A:ZZZ');
18
- log(`GoogleSheet: Updated cache with TTL: ${ttl}`, {
19
- level: LogLevel.Verbose,
20
- });
21
- return {
22
- delivery,
23
- inventory,
24
- };
25
- }
26
- catch (err) {
27
- log(err, { level: LogLevel.Error });
28
- throw err;
29
- }
30
- };
31
- const updateGoogleCache = async (cache) => {
32
- try {
33
- const sheet = await downloadSpreadsheet();
34
- if (sheet) {
35
- cache.set('tables', sheet);
36
- return sheet;
37
- }
38
- }
39
- catch (e) {
40
- log(e, { level: LogLevel.Error });
41
- }
42
- return null;
43
- };
44
- const googleCache = new LRU({
45
- max: 500,
46
- ttl,
47
- allowStale: true,
48
- dispose: () => {
49
- updateGoogleCache(googleCache);
50
- },
51
- });
52
- updateGoogleCache(googleCache);
53
- const getRows = async (name) => {
54
- const cachedTables = googleCache.get('tables');
55
- let tables = cachedTables;
56
- if (!cachedTables) {
57
- tables = await updateGoogleCache(googleCache);
58
- }
59
- if (!tables || !tables[name] || !tables[name].rows)
60
- return [];
61
- return tables[name].rows;
62
- };
63
- const getRemoteTime = async (sku, quantity, selector) => {
64
- const rows = await getRows('delivery');
65
- const resolvedRow = rows.reduce((result, row) => {
66
- const parsedQuantity = parseInt(row.Quantity.value, 10);
67
- const parsedSKU = row.SKU.value.toUpperCase();
68
- if (parsedSKU === sku && parsedQuantity <= quantity) {
69
- return row;
70
- }
71
- return result;
72
- }, null);
73
- if (!resolvedRow)
74
- return null;
75
- const time = parseInt(resolvedRow[selector].value, 10) || 0;
76
- log(`GoogleSheet: Resolve Time ${selector} (${quantity}) for ${sku}: ${time}`, {
77
- level: LogLevel.Verbose,
78
- });
79
- return time;
80
- };
81
- const getRemoteInventory = async (sku) => {
82
- const rows = await getRows('inventory');
83
- const resolvedRow = [].concat(rows).reduce((result, row) => {
84
- if (result || !row)
85
- return result;
86
- const parsedSKU = row.SKU.value.toUpperCase();
87
- if (parsedSKU === sku) {
88
- return row;
89
- }
90
- return result;
91
- }, null);
92
- if (!resolvedRow)
93
- return null;
94
- const amount = parseInt(resolvedRow.Stock.value, 10) || 0;
95
- log(`GoogleSheet: Resolve Inventory for ${sku}: ${amount}`, {
96
- level: LogLevel.Verbose,
97
- });
98
- return amount;
99
- };
100
- const GoogleSheets = {
101
- ...WarehousingAdapter,
102
- key: 'shop.unchained.warehousing.google-sheets',
103
- version: '1.0',
104
- label: 'Google Sheets',
105
- orderIndex: 0,
106
- typeSupported: (type) => {
107
- return type === WarehousingProviderType.PHYSICAL;
108
- },
109
- initialConfiguration: [
110
- {
111
- key: 'sheetId',
112
- value: null,
113
- },
114
- ],
115
- actions: (_, context) => {
116
- return {
117
- isActive: () => {
118
- return true;
119
- },
120
- configurationError: () => {
121
- return null;
122
- },
123
- stock: async () => {
124
- const { sku } = context.product.warehousing || {};
125
- return getRemoteInventory(sku);
126
- },
127
- productionTime: async (quantity) => {
128
- const { sku } = context.product.warehousing || {};
129
- if (!sku)
130
- return null;
131
- const selector = 'WAREHOUSE_HOURS';
132
- const timeInHours = await getRemoteTime(sku.toUpperCase(), quantity, selector);
133
- if (!timeInHours)
134
- return null;
135
- return timeInHours * 60 * 60 * 1000;
136
- },
137
- commissioningTime: async (quantity) => {
138
- const { product, deliveryProvider } = context;
139
- const { sku } = product.warehousing || {};
140
- if (!sku)
141
- return null;
142
- const { type } = deliveryProvider;
143
- const selector = `DELIVERY_HOURS:${type}`;
144
- const timeInHours = await getRemoteTime(sku.toUpperCase(), quantity, selector);
145
- if (!timeInHours)
146
- return null;
147
- return timeInHours * 60 * 60 * 1000;
148
- },
149
- };
150
- },
151
- };
152
- WarehousingDirector.registerAdapter(GoogleSheets);
153
- //# sourceMappingURL=google-sheets.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"google-sheets.js","sourceRoot":"","sources":["../../src/warehousing/google-sheets.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,33 +0,0 @@
1
- import { WarehousingDirector, WarehousingAdapter, WarehousingProviderType, } from '@unchainedshop/core-warehousing';
2
- const Store = {
3
- ...WarehousingAdapter,
4
- key: 'shop.unchained.warehousing.store',
5
- version: '1.0',
6
- label: 'Store',
7
- orderIndex: 0,
8
- initialConfiguration: [{ key: 'name', value: 'Flagship Store' }],
9
- typeSupported: (type) => {
10
- return type === WarehousingProviderType.PHYSICAL;
11
- },
12
- actions: () => {
13
- return {
14
- isActive: async () => {
15
- return true;
16
- },
17
- configurationError: async () => {
18
- return null;
19
- },
20
- stock: async () => {
21
- return 99999;
22
- },
23
- productionTime: async () => {
24
- return 0;
25
- },
26
- commissioningTime: async () => {
27
- return 0;
28
- },
29
- };
30
- },
31
- };
32
- WarehousingDirector.registerAdapter(Store);
33
- //# sourceMappingURL=store.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/warehousing/store.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,uBAAuB,GACxB,MAAM,iCAAiC,CAAC;AAGzC,MAAM,KAAK,GAAwB;IACjC,GAAG,kBAAkB;IAErB,GAAG,EAAE,kCAAkC;IACvC,OAAO,EAAE,KAAK;IACd,KAAK,EAAE,OAAO;IACd,UAAU,EAAE,CAAC;IAEb,oBAAoB,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAEhE,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE;QACtB,OAAO,IAAI,KAAK,uBAAuB,CAAC,QAAQ,CAAC;IACnD,CAAC;IAED,OAAO,EAAE,GAAG,EAAE;QACZ,OAAO;YACL,QAAQ,EAAE,KAAK,IAAI,EAAE;gBACnB,OAAO,IAAI,CAAC;YACd,CAAC;YAED,kBAAkB,EAAE,KAAK,IAAI,EAAE;gBAC7B,OAAO,IAAI,CAAC;YACd,CAAC;YAED,KAAK,EAAE,KAAK,IAAI,EAAE;gBAChB,OAAO,KAAK,CAAC;YACf,CAAC;YAED,cAAc,EAAE,KAAK,IAAI,EAAE;gBACzB,OAAO,CAAC,CAAC;YACX,CAAC;YAED,iBAAiB,EAAE,KAAK,IAAI,EAAE;gBAC5B,OAAO,CAAC,CAAC;YACX,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC;AAEF,mBAAmB,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC"}
@@ -1,2 +0,0 @@
1
- import { IWorkerAdapter } from '@unchainedshop/types/worker';
2
- export declare const BulkImportWorker: IWorkerAdapter<any, Record<string, unknown>>;
@@ -1,91 +0,0 @@
1
- import { WorkerDirector } from '@unchainedshop/core-worker';
2
- import { createLogger, LogLevel } from '@unchainedshop/logger';
3
- import { BaseAdapter } from '@unchainedshop/utils';
4
- import fs from 'fs';
5
- import JSONStream from 'JSONStream';
6
- import { EventIterator } from 'event-iterator';
7
- const logger = createLogger('unchained:platform:bulk-import');
8
- const streamPayloadToBulkImporter = async (bulkImporter, createReadStream) => {
9
- logger.profile(`parseAsync`, { level: LogLevel.Verbose, message: 'parseAsync' });
10
- const eventIterator = new EventIterator((queue) => {
11
- const readStream = createReadStream();
12
- const jsonStream = JSONStream.parse('events.*'); // rows, ANYTHING, doc
13
- jsonStream.on('data', queue.push);
14
- jsonStream.on('close', queue.stop);
15
- jsonStream.on('error', queue.fail);
16
- queue.on('highWater', () => readStream.pause());
17
- queue.on('lowWater', () => readStream.resume());
18
- readStream.pipe(jsonStream);
19
- return () => {
20
- jsonStream.removeListener('data', queue.push);
21
- jsonStream.removeListener('close', queue.stop);
22
- jsonStream.removeListener('error', queue.fail);
23
- jsonStream.destroy();
24
- };
25
- }, { highWaterMark: 100, lowWaterMark: 5 });
26
- for await (const event of eventIterator) { // eslint-disable-line
27
- await bulkImporter.prepare(event);
28
- }
29
- logger.profile(`parseAsync`, { level: LogLevel.Verbose, message: 'parseAsync' });
30
- };
31
- export const BulkImportWorker = {
32
- ...BaseAdapter,
33
- key: 'shop.unchained.worker-plugin.bulk-import',
34
- label: 'Bulk Import',
35
- version: '1.0',
36
- type: 'BULK_IMPORT',
37
- doWork: async (rawPayload, context) => {
38
- try {
39
- const { createShouldUpsertIfIDExists = false, skipCacheInvalidation = false, authorId = 'root', } = rawPayload;
40
- const bulkImporter = context.bulkImporter.createBulkImporter({
41
- logger,
42
- authorId,
43
- createShouldUpsertIfIDExists,
44
- skipCacheInvalidation,
45
- }, context);
46
- if (rawPayload.payloadFilePath) {
47
- // stream payload from file system
48
- await streamPayloadToBulkImporter(bulkImporter, () => fs.createReadStream(rawPayload.payloadFilePath));
49
- }
50
- else if (rawPayload.payloadId) {
51
- // stream payload from gridfs
52
- await streamPayloadToBulkImporter(bulkImporter, () => context.bulkImporter.BulkImportPayloads.openDownloadStream(rawPayload.payloadId));
53
- }
54
- else {
55
- const { events } = rawPayload;
56
- if (!events?.length)
57
- throw new Error('No events submitted');
58
- await events.reduce(async (currentEventPromise, nextEvent) => {
59
- await currentEventPromise;
60
- return bulkImporter.prepare(nextEvent);
61
- }, Promise.resolve());
62
- }
63
- const [result, error] = await bulkImporter.execute();
64
- await bulkImporter.invalidateCaches();
65
- if (error) {
66
- return {
67
- success: false,
68
- result,
69
- error,
70
- };
71
- }
72
- return {
73
- success: true,
74
- result,
75
- };
76
- }
77
- catch (err) {
78
- logger.error(err.message, err);
79
- return {
80
- success: false,
81
- error: {
82
- name: err.name,
83
- message: err.message,
84
- stack: err.stack,
85
- },
86
- };
87
- }
88
- },
89
- };
90
- WorkerDirector.registerAdapter(BulkImportWorker);
91
- //# sourceMappingURL=BulkImportWorker.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BulkImportWorker.js","sourceRoot":"","sources":["../../src/worker/BulkImportWorker.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export declare const configureGenerateOrderAutoscheduling: () => void;
@@ -1,110 +0,0 @@
1
- import { EnrollmentDirector, enrollmentsSettings, EnrollmentStatus, } from '@unchainedshop/core-enrollments';
2
- import { WorkerAdapter, WorkerDirector } from '@unchainedshop/core-worker';
3
- const generateOrder = async (enrollment, params, requestContext) => {
4
- if (!enrollment.payment || !enrollment.delivery)
5
- return null;
6
- const { modules } = requestContext;
7
- const { orderProducts, orderContext, ...configuration } = params;
8
- let order = await modules.orders.create({
9
- currency: enrollment.currencyCode,
10
- countryCode: enrollment.countryCode,
11
- contact: enrollment.contact,
12
- billingAddress: enrollment.billingAddress,
13
- originEnrollmentId: enrollment._id,
14
- ...configuration,
15
- }, enrollment.userId);
16
- const orderId = order._id;
17
- if (orderProducts) {
18
- await Promise.all(orderProducts.map(({ orderPosition, product }) => modules.orders.positions.addProductItem(orderPosition, { order, product }, requestContext)));
19
- }
20
- else {
21
- const product = await modules.products.findProduct({
22
- productId: enrollment.productId,
23
- });
24
- await modules.orders.positions.addProductItem({ quantity: 1 }, {
25
- order,
26
- product,
27
- }, requestContext);
28
- }
29
- const { paymentProviderId, context: paymentContext } = enrollment.payment;
30
- if (paymentProviderId) {
31
- await modules.orders.setPaymentProvider(orderId, paymentProviderId, requestContext);
32
- }
33
- const { deliveryProviderId, context: deliveryContext } = enrollment.delivery;
34
- if (deliveryProviderId) {
35
- await modules.orders.setDeliveryProvider(orderId, deliveryProviderId, requestContext);
36
- }
37
- order = await modules.orders.checkout(order._id, {
38
- paymentContext,
39
- deliveryContext,
40
- orderContext,
41
- }, requestContext);
42
- return order;
43
- };
44
- const GenerateOrderWorker = {
45
- ...WorkerAdapter,
46
- key: 'shop.unchained.worker-plugin.generate-enrollment-orders',
47
- label: 'Generates new Orders from Enrollments',
48
- version: '1.0',
49
- type: 'ENROLLMENT_ORDER_GENERATOR',
50
- doWork: async (input, requestContext) => {
51
- const { modules } = requestContext;
52
- const enrollments = await modules.enrollments.findEnrollments({
53
- status: [EnrollmentStatus.ACTIVE, EnrollmentStatus.PAUSED],
54
- });
55
- const errors = (await Promise.all(enrollments.map(async (enrollment) => {
56
- try {
57
- const director = await EnrollmentDirector.actions({ enrollment }, requestContext);
58
- const period = await director.nextPeriod();
59
- if (period) {
60
- const configuration = await director.configurationForOrder({
61
- ...input,
62
- period,
63
- });
64
- if (configuration) {
65
- const order = await generateOrder(enrollment, configuration, requestContext);
66
- if (order) {
67
- await modules.enrollments.addEnrollmentPeriod(enrollment._id, {
68
- ...period,
69
- orderId: order._id,
70
- });
71
- }
72
- }
73
- }
74
- }
75
- catch (e) {
76
- return {
77
- name: e.name,
78
- message: e.message,
79
- stack: e.stack,
80
- };
81
- }
82
- return null;
83
- }))).filter(Boolean);
84
- if (errors.length) {
85
- return {
86
- success: false,
87
- error: {
88
- name: 'SOME_ENROLLMENTS_COULD_NOT_PROCESS',
89
- message: 'Some errors have been reported during order generation',
90
- logs: errors,
91
- },
92
- result: {},
93
- };
94
- }
95
- return {
96
- success: true,
97
- result: input,
98
- };
99
- },
100
- };
101
- WorkerDirector.registerAdapter(GenerateOrderWorker);
102
- export const configureGenerateOrderAutoscheduling = () => {
103
- if (enrollmentsSettings.autoSchedulingSchedule) {
104
- WorkerDirector.configureAutoscheduling(GenerateOrderWorker, {
105
- schedule: enrollmentsSettings.autoSchedulingSchedule,
106
- input: enrollmentsSettings.autoSchedulingInput,
107
- });
108
- }
109
- };
110
- //# sourceMappingURL=GenerateOrderWorker.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"GenerateOrderWorker.js","sourceRoot":"","sources":["../../src/worker/GenerateOrderWorker.ts"],"names":[],"mappings":"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"}