@unchainedshop/plugins 1.2.0 → 1.2.1
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.
- package/package.json +1 -1
- package/src/files/gridfs/gridfs-adapter.ts +1 -1
- package/src/files/gridfs/gridfs-webhook.ts +1 -1
- package/src/files/minio/minio-adapter.ts +1 -2
- package/lib/delivery/pick-mup.d.ts +0 -1
- package/lib/delivery/pick-mup.js +0 -98
- package/lib/delivery/pick-mup.js.map +0 -1
- package/lib/delivery/post.d.ts +0 -1
- package/lib/delivery/post.js +0 -23
- package/lib/delivery/post.js.map +0 -1
- package/lib/delivery/send-message.d.ts +0 -1
- package/lib/delivery/send-message.js +0 -41
- package/lib/delivery/send-message.js.map +0 -1
- package/lib/delivery/stores.d.ts +0 -1
- package/lib/delivery/stores.js +0 -39
- package/lib/delivery/stores.js.map +0 -1
- package/lib/enrollments/licensed.d.ts +0 -1
- package/lib/enrollments/licensed.js +0 -40
- package/lib/enrollments/licensed.js.map +0 -1
- package/lib/events/node-event-emitter.d.ts +0 -1
- package/lib/events/node-event-emitter.js +0 -16
- package/lib/events/node-event-emitter.js.map +0 -1
- package/lib/events/redis.d.ts +0 -1
- package/lib/events/redis.js +0 -24
- package/lib/events/redis.js.map +0 -1
- package/lib/files/gridfs/gridfs-adapter.d.ts +0 -2
- package/lib/files/gridfs/gridfs-adapter.js +0 -106
- package/lib/files/gridfs/gridfs-adapter.js.map +0 -1
- package/lib/files/gridfs/gridfs-webhook.d.ts +0 -2
- package/lib/files/gridfs/gridfs-webhook.js +0 -55
- package/lib/files/gridfs/gridfs-webhook.js.map +0 -1
- package/lib/files/gridfs/index.d.ts +0 -8
- package/lib/files/gridfs/index.js +0 -21
- package/lib/files/gridfs/index.js.map +0 -1
- package/lib/files/gridfs/promisePipe.d.ts +0 -2
- package/lib/files/gridfs/promisePipe.js +0 -21
- package/lib/files/gridfs/promisePipe.js.map +0 -1
- package/lib/files/gridfs/sign.d.ts +0 -2
- package/lib/files/gridfs/sign.js +0 -12
- package/lib/files/gridfs/sign.js.map +0 -1
- package/lib/files/minio/minio-adapter.d.ts +0 -4
- package/lib/files/minio/minio-adapter.js +0 -166
- package/lib/files/minio/minio-adapter.js.map +0 -1
- package/lib/files/minio/minio-webhook.d.ts +0 -2
- package/lib/files/minio/minio-webhook.js +0 -47
- package/lib/files/minio/minio-webhook.js.map +0 -1
- package/lib/filters/local-search.d.ts +0 -3
- package/lib/filters/local-search.js +0 -84
- package/lib/filters/local-search.js.map +0 -1
- package/lib/filters/strict-equal.d.ts +0 -1
- package/lib/filters/strict-equal.js +0 -25
- package/lib/filters/strict-equal.js.map +0 -1
- package/lib/payment/apple-iap/adapter.d.ts +0 -2
- package/lib/payment/apple-iap/adapter.js +0 -286
- package/lib/payment/apple-iap/adapter.js.map +0 -1
- package/lib/payment/apple-iap/db/AppleTransactionsCollection.d.ts +0 -7
- package/lib/payment/apple-iap/db/AppleTransactionsCollection.js +0 -5
- package/lib/payment/apple-iap/db/AppleTransactionsCollection.js.map +0 -1
- package/lib/payment/apple-iap/index.d.ts +0 -3
- package/lib/payment/apple-iap/index.js +0 -4
- package/lib/payment/apple-iap/index.js.map +0 -1
- package/lib/payment/apple-iap/module/configureAppleTransactionsModule.d.ts +0 -9
- package/lib/payment/apple-iap/module/configureAppleTransactionsModule.js +0 -18
- package/lib/payment/apple-iap/module/configureAppleTransactionsModule.js.map +0 -1
- package/lib/payment/bity/adapter.d.ts +0 -2
- package/lib/payment/bity/adapter.js +0 -318
- package/lib/payment/bity/adapter.js.map +0 -1
- package/lib/payment/bity/db/BityCredentialsCollection.d.ts +0 -11
- package/lib/payment/bity/db/BityCredentialsCollection.js +0 -5
- package/lib/payment/bity/db/BityCredentialsCollection.js.map +0 -1
- package/lib/payment/bity/index.d.ts +0 -3
- package/lib/payment/bity/index.js +0 -4
- package/lib/payment/bity/index.js.map +0 -1
- package/lib/payment/bity/module/configureBityModule.d.ts +0 -11
- package/lib/payment/bity/module/configureBityModule.js +0 -33
- package/lib/payment/bity/module/configureBityModule.js.map +0 -1
- package/lib/payment/braintree.d.ts +0 -1
- package/lib/payment/braintree.js +0 -129
- package/lib/payment/braintree.js.map +0 -1
- package/lib/payment/cryptopay.d.ts +0 -2
- package/lib/payment/cryptopay.js +0 -161
- package/lib/payment/cryptopay.js.map +0 -1
- package/lib/payment/datatrans-v2/api/authorize.d.ts +0 -2
- package/lib/payment/datatrans-v2/api/authorize.js +0 -12
- package/lib/payment/datatrans-v2/api/authorize.js.map +0 -1
- package/lib/payment/datatrans-v2/api/authorizeAuthenticated.d.ts +0 -2
- package/lib/payment/datatrans-v2/api/authorizeAuthenticated.js +0 -11
- package/lib/payment/datatrans-v2/api/authorizeAuthenticated.js.map +0 -1
- package/lib/payment/datatrans-v2/api/cancel.d.ts +0 -2
- package/lib/payment/datatrans-v2/api/cancel.js +0 -10
- package/lib/payment/datatrans-v2/api/cancel.js.map +0 -1
- package/lib/payment/datatrans-v2/api/index.d.ts +0 -19
- package/lib/payment/datatrans-v2/api/index.js +0 -24
- package/lib/payment/datatrans-v2/api/index.js.map +0 -1
- package/lib/payment/datatrans-v2/api/init.d.ts +0 -2
- package/lib/payment/datatrans-v2/api/init.js +0 -31
- package/lib/payment/datatrans-v2/api/init.js.map +0 -1
- package/lib/payment/datatrans-v2/api/makeFetcher.d.ts +0 -2
- package/lib/payment/datatrans-v2/api/makeFetcher.js +0 -41
- package/lib/payment/datatrans-v2/api/makeFetcher.js.map +0 -1
- package/lib/payment/datatrans-v2/api/secureFields.d.ts +0 -2
- package/lib/payment/datatrans-v2/api/secureFields.js +0 -14
- package/lib/payment/datatrans-v2/api/secureFields.js.map +0 -1
- package/lib/payment/datatrans-v2/api/settle.d.ts +0 -2
- package/lib/payment/datatrans-v2/api/settle.js +0 -10
- package/lib/payment/datatrans-v2/api/settle.js.map +0 -1
- package/lib/payment/datatrans-v2/api/status.d.ts +0 -2
- package/lib/payment/datatrans-v2/api/status.js +0 -7
- package/lib/payment/datatrans-v2/api/status.js.map +0 -1
- package/lib/payment/datatrans-v2/api/validate.d.ts +0 -2
- package/lib/payment/datatrans-v2/api/validate.js +0 -10
- package/lib/payment/datatrans-v2/api/validate.js.map +0 -1
- package/lib/payment/datatrans-v2/generateSignature.d.ts +0 -10
- package/lib/payment/datatrans-v2/generateSignature.js +0 -19
- package/lib/payment/datatrans-v2/generateSignature.js.map +0 -1
- package/lib/payment/datatrans-v2/getPaths.d.ts +0 -9
- package/lib/payment/datatrans-v2/getPaths.js +0 -9
- package/lib/payment/datatrans-v2/getPaths.js.map +0 -1
- package/lib/payment/datatrans-v2/index.d.ts +0 -2
- package/lib/payment/datatrans-v2/index.js +0 -385
- package/lib/payment/datatrans-v2/index.js.map +0 -1
- package/lib/payment/datatrans-v2/middleware.d.ts +0 -2
- package/lib/payment/datatrans-v2/middleware.js +0 -113
- package/lib/payment/datatrans-v2/middleware.js.map +0 -1
- package/lib/payment/datatrans-v2/parseRegistrationData.d.ts +0 -11
- package/lib/payment/datatrans-v2/parseRegistrationData.js +0 -26
- package/lib/payment/datatrans-v2/parseRegistrationData.js.map +0 -1
- package/lib/payment/datatrans-v2/roundedAmountFromOrder.d.ts +0 -7
- package/lib/payment/datatrans-v2/roundedAmountFromOrder.js +0 -10
- package/lib/payment/datatrans-v2/roundedAmountFromOrder.js.map +0 -1
- package/lib/payment/datatrans-v2/splitProperties.d.ts +0 -8
- package/lib/payment/datatrans-v2/splitProperties.js +0 -58
- package/lib/payment/datatrans-v2/splitProperties.js.map +0 -1
- package/lib/payment/invoice-prepaid.d.ts +0 -1
- package/lib/payment/invoice-prepaid.js +0 -30
- package/lib/payment/invoice-prepaid.js.map +0 -1
- package/lib/payment/invoice.d.ts +0 -1
- package/lib/payment/invoice.js +0 -27
- package/lib/payment/invoice.js.map +0 -1
- package/lib/payment/paypal-checkout.d.ts +0 -1
- package/lib/payment/paypal-checkout.js +0 -82
- package/lib/payment/paypal-checkout.js.map +0 -1
- package/lib/payment/postfinance-checkout/api.d.ts +0 -11
- package/lib/payment/postfinance-checkout/api.js +0 -109
- package/lib/payment/postfinance-checkout/api.js.map +0 -1
- package/lib/payment/postfinance-checkout/index.d.ts +0 -2
- package/lib/payment/postfinance-checkout/index.js +0 -187
- package/lib/payment/postfinance-checkout/index.js.map +0 -1
- package/lib/payment/postfinance-checkout/middleware.d.ts +0 -2
- package/lib/payment/postfinance-checkout/middleware.js +0 -44
- package/lib/payment/postfinance-checkout/middleware.js.map +0 -1
- package/lib/payment/postfinance-checkout/types.d.ts +0 -23
- package/lib/payment/postfinance-checkout/types.js +0 -12
- package/lib/payment/postfinance-checkout/types.js.map +0 -1
- package/lib/payment/postfinance-checkout/utils.d.ts +0 -4
- package/lib/payment/postfinance-checkout/utils.js +0 -20
- package/lib/payment/postfinance-checkout/utils.js.map +0 -1
- package/lib/payment/stripe.d.ts +0 -2
- package/lib/payment/stripe.js +0 -217
- package/lib/payment/stripe.js.map +0 -1
- package/lib/payment/worldline-saferpay/index.d.ts +0 -1
- package/lib/payment/worldline-saferpay/index.js +0 -112
- package/lib/payment/worldline-saferpay/index.js.map +0 -1
- package/lib/payment/worldline-saferpay/worldline-saferpay-client/api/SaferpayClient.d.ts +0 -14
- package/lib/payment/worldline-saferpay/worldline-saferpay-client/api/SaferpayClient.js +0 -29
- package/lib/payment/worldline-saferpay/worldline-saferpay-client/api/SaferpayClient.js.map +0 -1
- package/lib/payment/worldline-saferpay/worldline-saferpay-client/api/SaferpayConnection.d.ts +0 -9
- package/lib/payment/worldline-saferpay/worldline-saferpay-client/api/SaferpayConnection.js +0 -28
- package/lib/payment/worldline-saferpay/worldline-saferpay-client/api/SaferpayConnection.js.map +0 -1
- package/lib/payment/worldline-saferpay/worldline-saferpay-client/index.d.ts +0 -4
- package/lib/payment/worldline-saferpay/worldline-saferpay-client/index.js +0 -2
- package/lib/payment/worldline-saferpay/worldline-saferpay-client/index.js.map +0 -1
- package/lib/payment/worldline-saferpay/worldline-saferpay-client/models/PaymentMethods.d.ts +0 -1
- package/lib/payment/worldline-saferpay/worldline-saferpay-client/models/PaymentMethods.js +0 -2
- package/lib/payment/worldline-saferpay/worldline-saferpay-client/models/PaymentMethods.js.map +0 -1
- package/lib/payment/worldline-saferpay/worldline-saferpay-client/models/PaymentPageAssert.d.ts +0 -73
- package/lib/payment/worldline-saferpay/worldline-saferpay-client/models/PaymentPageAssert.js +0 -2
- package/lib/payment/worldline-saferpay/worldline-saferpay-client/models/PaymentPageAssert.js.map +0 -1
- package/lib/payment/worldline-saferpay/worldline-saferpay-client/models/PaymentPageInitialize.d.ts +0 -53
- package/lib/payment/worldline-saferpay/worldline-saferpay-client/models/PaymentPageInitialize.js +0 -2
- package/lib/payment/worldline-saferpay/worldline-saferpay-client/models/PaymentPageInitialize.js.map +0 -1
- package/lib/payment/worldline-saferpay/worldline-saferpay-client/models/Request.d.ts +0 -13
- package/lib/payment/worldline-saferpay/worldline-saferpay-client/models/Request.js +0 -2
- package/lib/payment/worldline-saferpay/worldline-saferpay-client/models/Request.js.map +0 -1
- package/lib/payment/worldline-saferpay/worldline-saferpay-client/models/Response.d.ts +0 -9
- package/lib/payment/worldline-saferpay/worldline-saferpay-client/models/Response.js +0 -2
- package/lib/payment/worldline-saferpay/worldline-saferpay-client/models/Response.js.map +0 -1
- package/lib/payment/worldline-saferpay/worldline-saferpay-client/models/Transaction.d.ts +0 -5
- package/lib/payment/worldline-saferpay/worldline-saferpay-client/models/Transaction.js +0 -2
- package/lib/payment/worldline-saferpay/worldline-saferpay-client/models/Transaction.js.map +0 -1
- package/lib/payment/worldline-saferpay/worldline-saferpay-client/models/TransactionCancel.d.ts +0 -13
- package/lib/payment/worldline-saferpay/worldline-saferpay-client/models/TransactionCancel.js +0 -2
- package/lib/payment/worldline-saferpay/worldline-saferpay-client/models/TransactionCancel.js.map +0 -1
- package/lib/pricing/delivery-swiss-tax.d.ts +0 -15
- package/lib/pricing/delivery-swiss-tax.js +0 -98
- package/lib/pricing/delivery-swiss-tax.js.map +0 -1
- package/lib/pricing/discount-100-off.d.ts +0 -1
- package/lib/pricing/discount-100-off.js +0 -34
- package/lib/pricing/discount-100-off.js.map +0 -1
- package/lib/pricing/discount-half-price-manual.d.ts +0 -1
- package/lib/pricing/discount-half-price-manual.js +0 -34
- package/lib/pricing/discount-half-price-manual.js.map +0 -1
- package/lib/pricing/discount-half-price.d.ts +0 -1
- package/lib/pricing/discount-half-price.js +0 -37
- package/lib/pricing/discount-half-price.js.map +0 -1
- package/lib/pricing/free-delivery.d.ts +0 -2
- package/lib/pricing/free-delivery.js +0 -26
- package/lib/pricing/free-delivery.js.map +0 -1
- package/lib/pricing/free-payment.d.ts +0 -2
- package/lib/pricing/free-payment.js +0 -26
- package/lib/pricing/free-payment.js.map +0 -1
- package/lib/pricing/order-delivery.d.ts +0 -1
- package/lib/pricing/order-delivery.js +0 -33
- package/lib/pricing/order-delivery.js.map +0 -1
- package/lib/pricing/order-discount.d.ts +0 -1
- package/lib/pricing/order-discount.js +0 -110
- package/lib/pricing/order-discount.js.map +0 -1
- package/lib/pricing/order-items-discount.d.ts +0 -1
- package/lib/pricing/order-items-discount.js +0 -88
- package/lib/pricing/order-items-discount.js.map +0 -1
- package/lib/pricing/order-items.d.ts +0 -1
- package/lib/pricing/order-items.js +0 -44
- package/lib/pricing/order-items.js.map +0 -1
- package/lib/pricing/order-payment.d.ts +0 -1
- package/lib/pricing/order-payment.js +0 -33
- package/lib/pricing/order-payment.js.map +0 -1
- package/lib/pricing/product-catalog-price.d.ts +0 -1
- package/lib/pricing/product-catalog-price.js +0 -37
- package/lib/pricing/product-catalog-price.js.map +0 -1
- package/lib/pricing/product-discount.d.ts +0 -1
- package/lib/pricing/product-discount.js +0 -55
- package/lib/pricing/product-discount.js.map +0 -1
- package/lib/pricing/product-price-ECB-interbank-exchange.d.ts +0 -1
- package/lib/pricing/product-price-ECB-interbank-exchange.js +0 -90
- package/lib/pricing/product-price-ECB-interbank-exchange.js.map +0 -1
- package/lib/pricing/product-price-coinbase-exchange.d.ts +0 -1
- package/lib/pricing/product-price-coinbase-exchange.js +0 -60
- package/lib/pricing/product-price-coinbase-exchange.js.map +0 -1
- package/lib/pricing/product-price-cryptopay.d.ts +0 -2
- package/lib/pricing/product-price-cryptopay.js +0 -23
- package/lib/pricing/product-price-cryptopay.js.map +0 -1
- package/lib/pricing/product-price-rateconversion.d.ts +0 -1
- package/lib/pricing/product-price-rateconversion.js +0 -51
- package/lib/pricing/product-price-rateconversion.js.map +0 -1
- package/lib/pricing/product-price-round.d.ts +0 -11
- package/lib/pricing/product-price-round.js +0 -54
- package/lib/pricing/product-price-round.js.map +0 -1
- package/lib/pricing/product-swiss-tax.d.ts +0 -13
- package/lib/pricing/product-swiss-tax.js +0 -102
- package/lib/pricing/product-swiss-tax.js.map +0 -1
- package/lib/pricing/utils/cache.d.ts +0 -9
- package/lib/pricing/utils/cache.js +0 -28
- package/lib/pricing/utils/cache.js.map +0 -1
- package/lib/quotations/manual.d.ts +0 -1
- package/lib/quotations/manual.js +0 -21
- package/lib/quotations/manual.js.map +0 -1
- package/lib/warehousing/google-sheets.d.ts +0 -1
- package/lib/warehousing/google-sheets.js +0 -153
- package/lib/warehousing/google-sheets.js.map +0 -1
- package/lib/warehousing/store.d.ts +0 -1
- package/lib/warehousing/store.js +0 -33
- package/lib/warehousing/store.js.map +0 -1
- package/lib/worker/BulkImportWorker.d.ts +0 -2
- package/lib/worker/BulkImportWorker.js +0 -91
- package/lib/worker/BulkImportWorker.js.map +0 -1
- package/lib/worker/GenerateOrderWorker.d.ts +0 -1
- package/lib/worker/GenerateOrderWorker.js +0 -110
- package/lib/worker/GenerateOrderWorker.js.map +0 -1
- package/lib/worker/MessageWorker.d.ts +0 -10
- package/lib/worker/MessageWorker.js +0 -45
- package/lib/worker/MessageWorker.js.map +0 -1
- package/lib/worker/ZombieKillerWorker.d.ts +0 -7
- package/lib/worker/ZombieKillerWorker.js +0 -88
- package/lib/worker/ZombieKillerWorker.js.map +0 -1
- package/lib/worker/email.d.ts +0 -1
- package/lib/worker/email.js +0 -97
- package/lib/worker/email.js.map +0 -1
- package/lib/worker/external.d.ts +0 -2
- package/lib/worker/external.js +0 -13
- package/lib/worker/external.js.map +0 -1
- package/lib/worker/heartbeat.d.ts +0 -1
- package/lib/worker/heartbeat.js +0 -32
- package/lib/worker/heartbeat.js.map +0 -1
- package/lib/worker/http-request.d.ts +0 -8
- package/lib/worker/http-request.js +0 -61
- package/lib/worker/http-request.js.map +0 -1
- package/lib/worker/sms.d.ts +0 -1
- package/lib/worker/sms.js +0 -69
- package/lib/worker/sms.js.map +0 -1
|
@@ -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,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,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 {};
|
package/lib/quotations/manual.js
DELETED
|
@@ -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 {};
|
package/lib/warehousing/store.js
DELETED
|
@@ -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,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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"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { IWorkerAdapter, Work } from '@unchainedshop/types/worker';
|
|
2
|
-
export declare const messagingLogger: import("winston").Logger;
|
|
3
|
-
export declare const MessageWorker: IWorkerAdapter<{
|
|
4
|
-
template: string;
|
|
5
|
-
_id?: string;
|
|
6
|
-
[x: string]: any;
|
|
7
|
-
}, {
|
|
8
|
-
info?: string;
|
|
9
|
-
forked?: Array<Work>;
|
|
10
|
-
}>;
|