@unchainedshop/plugins 4.0.0-rc.9 → 4.0.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/lib/accounts/google-oauth.d.ts +4 -0
- package/lib/accounts/google-oauth.d.ts.map +1 -0
- package/lib/accounts/google-oauth.js +145 -0
- package/lib/accounts/google-oauth.js.map +1 -0
- package/lib/accounts/linkedin-oauth.d.ts +4 -0
- package/lib/accounts/linkedin-oauth.d.ts.map +1 -0
- package/lib/accounts/linkedin-oauth.js +82 -0
- package/lib/accounts/linkedin-oauth.js.map +1 -0
- package/lib/delivery/send-message.js.map +1 -1
- package/lib/enrollments/licensed.js +15 -2
- package/lib/enrollments/licensed.js.map +1 -1
- package/lib/files/gridfs/adapter.d.ts.map +1 -1
- package/lib/files/gridfs/adapter.js +11 -8
- package/lib/files/gridfs/adapter.js.map +1 -1
- package/lib/files/gridfs/gridfs-adapter.d.ts +3 -0
- package/lib/files/gridfs/gridfs-adapter.d.ts.map +1 -0
- package/lib/files/gridfs/gridfs-adapter.js +97 -0
- package/lib/files/gridfs/gridfs-adapter.js.map +1 -0
- package/lib/files/gridfs/gridfs-webhook.d.ts +11 -0
- package/lib/files/gridfs/gridfs-webhook.d.ts.map +1 -0
- package/lib/files/gridfs/gridfs-webhook.js +84 -0
- package/lib/files/gridfs/gridfs-webhook.js.map +1 -0
- package/lib/files/gridfs/handler-express.d.ts.map +1 -1
- package/lib/files/gridfs/handler-express.js +21 -25
- package/lib/files/gridfs/handler-express.js.map +1 -1
- package/lib/files/gridfs/handler-fastify.d.ts.map +1 -1
- package/lib/files/gridfs/handler-fastify.js +50 -13
- package/lib/files/gridfs/handler-fastify.js.map +1 -1
- package/lib/files/gridfs/module.d.ts +2 -2
- package/lib/files/minio/handler-express.d.ts.map +1 -1
- package/lib/files/minio/handler-express.js +4 -7
- package/lib/files/minio/handler-express.js.map +1 -1
- package/lib/files/minio/handler-fastify.js +2 -2
- package/lib/files/minio/handler-fastify.js.map +1 -1
- package/lib/files/minio/index.d.ts +1 -1
- package/lib/files/minio/index.d.ts.map +1 -1
- package/lib/files/minio/index.js +7 -7
- package/lib/files/minio/index.js.map +1 -1
- package/lib/files/minio/minio-adapter.d.ts +6 -0
- package/lib/files/minio/minio-adapter.d.ts.map +1 -0
- package/lib/files/minio/minio-adapter.js +181 -0
- package/lib/files/minio/minio-adapter.js.map +1 -0
- package/lib/files/minio/minio-webhook.d.ts +2 -0
- package/lib/files/minio/minio-webhook.d.ts.map +1 -0
- package/lib/files/minio/minio-webhook.js +33 -0
- package/lib/files/minio/minio-webhook.js.map +1 -0
- package/lib/filters/local-search.js +1 -1
- package/lib/filters/local-search.js.map +1 -1
- package/lib/filters/strict-equal.js +0 -18
- package/lib/filters/strict-equal.js.map +1 -1
- package/lib/payment/apple-iap/adapter.js +12 -10
- package/lib/payment/apple-iap/adapter.js.map +1 -1
- package/lib/payment/apple-iap/db/AppleTransactionsCollection.d.ts +1 -1
- package/lib/payment/apple-iap/db/AppleTransactionsCollection.d.ts.map +1 -1
- package/lib/payment/apple-iap/handler-express.d.ts.map +1 -1
- package/lib/payment/apple-iap/handler-express.js +14 -10
- package/lib/payment/apple-iap/handler-express.js.map +1 -1
- package/lib/payment/apple-iap/handler-fastify.d.ts.map +1 -1
- package/lib/payment/apple-iap/handler-fastify.js +15 -8
- package/lib/payment/apple-iap/handler-fastify.js.map +1 -1
- package/lib/payment/apple-iap/module/configureAppleTransactionsModule.d.ts +9 -0
- package/lib/payment/apple-iap/module/configureAppleTransactionsModule.d.ts.map +1 -0
- package/lib/payment/apple-iap/module/configureAppleTransactionsModule.js +17 -0
- package/lib/payment/apple-iap/module/configureAppleTransactionsModule.js.map +1 -0
- package/lib/payment/apple-iap/module.d.ts +4 -4
- package/lib/payment/apple-iap/module.d.ts.map +1 -1
- package/lib/payment/apple-iap/module.js +4 -2
- package/lib/payment/apple-iap/module.js.map +1 -1
- package/lib/payment/braintree.js +3 -1
- package/lib/payment/braintree.js.map +1 -1
- package/lib/payment/cryptopay/db/CryptopayTransactions.d.ts +1 -1
- package/lib/payment/cryptopay/db/CryptopayTransactions.d.ts.map +1 -1
- package/lib/payment/cryptopay/derive-btc-address.d.ts.map +1 -1
- package/lib/payment/cryptopay/derive-btc-address.js +2 -3
- package/lib/payment/cryptopay/derive-btc-address.js.map +1 -1
- package/lib/payment/cryptopay/derive-eth-address.d.ts.map +1 -1
- package/lib/payment/cryptopay/derive-eth-address.js +5 -3
- package/lib/payment/cryptopay/derive-eth-address.js.map +1 -1
- package/lib/payment/cryptopay/handle-webhook.js +2 -2
- package/lib/payment/cryptopay/handle-webhook.js.map +1 -1
- package/lib/payment/cryptopay/handler-express.d.ts.map +1 -1
- package/lib/payment/cryptopay/handler-express.js +4 -7
- package/lib/payment/cryptopay/handler-express.js.map +1 -1
- package/lib/payment/cryptopay/handler-fastify.js +1 -1
- package/lib/payment/cryptopay/handler-fastify.js.map +1 -1
- package/lib/payment/cryptopay/middleware.d.ts +2 -0
- package/lib/payment/cryptopay/middleware.d.ts.map +1 -0
- package/lib/payment/cryptopay/middleware.js +75 -0
- package/lib/payment/cryptopay/middleware.js.map +1 -0
- package/lib/payment/cryptopay/module/configureCryptopayModule.d.ts +25 -0
- package/lib/payment/cryptopay/module/configureCryptopayModule.d.ts.map +1 -0
- package/lib/payment/cryptopay/module/configureCryptopayModule.js +75 -0
- package/lib/payment/cryptopay/module/configureCryptopayModule.js.map +1 -0
- package/lib/payment/cryptopay/module.d.ts +2 -2
- package/lib/payment/cryptopay/module.d.ts.map +1 -1
- package/lib/payment/cryptopay/module.js +4 -4
- package/lib/payment/cryptopay/module.js.map +1 -1
- package/lib/payment/cryptopay/plugin.d.ts.map +1 -1
- package/lib/payment/cryptopay/plugin.js +18 -4
- package/lib/payment/cryptopay/plugin.js.map +1 -1
- package/lib/payment/datatrans-v2/handler-express.d.ts.map +1 -1
- package/lib/payment/datatrans-v2/handler-express.js +13 -11
- package/lib/payment/datatrans-v2/handler-express.js.map +1 -1
- package/lib/payment/datatrans-v2/handler-fastify.d.ts.map +1 -1
- package/lib/payment/datatrans-v2/handler-fastify.js +11 -5
- package/lib/payment/datatrans-v2/handler-fastify.js.map +1 -1
- package/lib/payment/datatrans-v2/index.js +63 -37
- package/lib/payment/datatrans-v2/index.js.map +1 -1
- package/lib/payment/datatrans-v2/middleware.d.ts +2 -0
- package/lib/payment/datatrans-v2/middleware.d.ts.map +1 -0
- package/lib/payment/datatrans-v2/middleware.js +68 -0
- package/lib/payment/datatrans-v2/middleware.js.map +1 -0
- package/lib/payment/datatrans-v2/parseRegistrationData.d.ts +1 -1
- package/lib/payment/datatrans-v2/parseRegistrationData.d.ts.map +1 -1
- package/lib/payment/paypal-checkout.js +4 -2
- package/lib/payment/paypal-checkout.js.map +1 -1
- package/lib/payment/payrexx/api/index.d.ts +1 -1
- package/lib/payment/payrexx/api/index.d.ts.map +1 -1
- package/lib/payment/payrexx/api/makeFetcher.d.ts +1 -1
- package/lib/payment/payrexx/api/makeFetcher.d.ts.map +1 -1
- package/lib/payment/payrexx/api/makeFetcher.js +1 -1
- package/lib/payment/payrexx/api/makeFetcher.js.map +1 -1
- package/lib/payment/payrexx/handler-express.d.ts.map +1 -1
- package/lib/payment/payrexx/handler-express.js +15 -15
- package/lib/payment/payrexx/handler-express.js.map +1 -1
- package/lib/payment/payrexx/handler-fastify.js +23 -15
- package/lib/payment/payrexx/handler-fastify.js.map +1 -1
- package/lib/payment/payrexx/index.js +21 -15
- package/lib/payment/payrexx/index.js.map +1 -1
- package/lib/payment/payrexx/middleware.d.ts +2 -0
- package/lib/payment/payrexx/middleware.d.ts.map +1 -0
- package/lib/payment/payrexx/middleware.js +86 -0
- package/lib/payment/payrexx/middleware.js.map +1 -0
- package/lib/payment/postfinance-checkout/api-client.d.ts.map +1 -1
- package/lib/payment/postfinance-checkout/api-client.js +7 -7
- package/lib/payment/postfinance-checkout/api-client.js.map +1 -1
- package/lib/payment/postfinance-checkout/handler-express.js +7 -8
- package/lib/payment/postfinance-checkout/handler-express.js.map +1 -1
- package/lib/payment/postfinance-checkout/handler-fastify.d.ts.map +1 -1
- package/lib/payment/postfinance-checkout/handler-fastify.js +6 -4
- package/lib/payment/postfinance-checkout/handler-fastify.js.map +1 -1
- package/lib/payment/postfinance-checkout/index.d.ts.map +1 -1
- package/lib/payment/postfinance-checkout/index.js +20 -7
- package/lib/payment/postfinance-checkout/index.js.map +1 -1
- package/lib/payment/postfinance-checkout/middleware.d.ts +2 -0
- package/lib/payment/postfinance-checkout/middleware.d.ts.map +1 -0
- package/lib/payment/postfinance-checkout/middleware.js +38 -0
- package/lib/payment/postfinance-checkout/middleware.js.map +1 -0
- package/lib/payment/saferpay/adapter.d.ts.map +1 -1
- package/lib/payment/saferpay/adapter.js +9 -0
- package/lib/payment/saferpay/adapter.js.map +1 -1
- package/lib/payment/saferpay/handler-express.d.ts.map +1 -1
- package/lib/payment/saferpay/handler-express.js +10 -8
- package/lib/payment/saferpay/handler-express.js.map +1 -1
- package/lib/payment/saferpay/handler-fastify.d.ts.map +1 -1
- package/lib/payment/saferpay/handler-fastify.js +11 -5
- package/lib/payment/saferpay/handler-fastify.js.map +1 -1
- package/lib/payment/saferpay/middleware.d.ts +2 -0
- package/lib/payment/saferpay/middleware.d.ts.map +1 -0
- package/lib/payment/saferpay/middleware.js +57 -0
- package/lib/payment/saferpay/middleware.js.map +1 -0
- package/lib/payment/saferpay/module/configureSaferpayTransactionsModule.d.ts +10 -0
- package/lib/payment/saferpay/module/configureSaferpayTransactionsModule.d.ts.map +1 -0
- package/lib/payment/saferpay/module/configureSaferpayTransactionsModule.js +24 -0
- package/lib/payment/saferpay/module/configureSaferpayTransactionsModule.js.map +1 -0
- package/lib/payment/saferpay/module.d.ts +2 -2
- package/lib/payment/stripe/handler-express.js +25 -17
- package/lib/payment/stripe/handler-express.js.map +1 -1
- package/lib/payment/stripe/handler-fastify.d.ts.map +1 -1
- package/lib/payment/stripe/handler-fastify.js +33 -12
- package/lib/payment/stripe/handler-fastify.js.map +1 -1
- package/lib/payment/stripe/index.js +21 -15
- package/lib/payment/stripe/index.js.map +1 -1
- package/lib/payment/stripe/middleware.d.ts +6 -0
- package/lib/payment/stripe/middleware.d.ts.map +1 -0
- package/lib/payment/stripe/middleware.js +114 -0
- package/lib/payment/stripe/middleware.js.map +1 -0
- package/lib/payment/stripe/stripe.d.ts +2 -2
- package/lib/payment/stripe/stripe.d.ts.map +1 -1
- package/lib/payment/stripe/stripe.js +14 -11
- package/lib/payment/stripe/stripe.js.map +1 -1
- package/lib/plugins-index.d.ts +48 -0
- package/lib/plugins-index.d.ts.map +1 -0
- package/lib/plugins-index.js +107 -0
- package/lib/plugins-index.js.map +1 -0
- package/lib/presets/all.d.ts +5 -5
- package/lib/presets/all.d.ts.map +1 -1
- package/lib/pricing/delivery-swiss-tax.d.ts.map +1 -1
- package/lib/pricing/delivery-swiss-tax.js +13 -20
- package/lib/pricing/delivery-swiss-tax.js.map +1 -1
- package/lib/pricing/order-discount.d.ts.map +1 -1
- package/lib/pricing/order-discount.js +5 -3
- package/lib/pricing/order-discount.js.map +1 -1
- package/lib/pricing/order-round.d.ts.map +1 -1
- package/lib/pricing/order-round.js +4 -3
- package/lib/pricing/order-round.js.map +1 -1
- package/lib/pricing/product-catalog-price-options.d.ts +2 -0
- package/lib/pricing/product-catalog-price-options.d.ts.map +1 -0
- package/lib/pricing/product-catalog-price-options.js +52 -0
- package/lib/pricing/product-catalog-price-options.js.map +1 -0
- package/lib/pricing/product-catalog-price.d.ts.map +1 -1
- package/lib/pricing/product-catalog-price.js +26 -2
- package/lib/pricing/product-catalog-price.js.map +1 -1
- package/lib/pricing/product-price-rateconversion.js +3 -3
- package/lib/pricing/product-price-rateconversion.js.map +1 -1
- package/lib/pricing/product-swiss-tax.d.ts +1 -5
- package/lib/pricing/product-swiss-tax.d.ts.map +1 -1
- package/lib/pricing/product-swiss-tax.js +26 -22
- package/lib/pricing/product-swiss-tax.js.map +1 -1
- package/lib/pricing/tax/ch.d.ts +7 -2
- package/lib/pricing/tax/ch.d.ts.map +1 -1
- package/lib/pricing/tax/ch.js +16 -1
- package/lib/pricing/tax/ch.js.map +1 -1
- package/lib/pricing/utils/isDeliveryAddressInCountry.d.ts +7 -0
- package/lib/pricing/utils/isDeliveryAddressInCountry.d.ts.map +1 -0
- package/lib/pricing/utils/isDeliveryAddressInCountry.js +13 -0
- package/lib/pricing/utils/isDeliveryAddressInCountry.js.map +1 -0
- package/lib/warehousing/eth-minter.js +23 -11
- package/lib/warehousing/eth-minter.js.map +1 -1
- package/lib/worker/bulk-import.d.ts +1 -1
- package/lib/worker/bulk-import.d.ts.map +1 -1
- package/lib/worker/bulk-import.js +11 -33
- package/lib/worker/bulk-import.js.map +1 -1
- package/lib/worker/email.d.ts.map +1 -1
- package/lib/worker/email.js +25 -7
- package/lib/worker/email.js.map +1 -1
- package/lib/worker/enrollment-order-generator.d.ts.map +1 -1
- package/lib/worker/enrollment-order-generator.js +7 -49
- package/lib/worker/enrollment-order-generator.js.map +1 -1
- package/lib/worker/error-notifications.js +1 -1
- package/lib/worker/error-notifications.js.map +1 -1
- package/lib/worker/export-token.d.ts.map +1 -1
- package/lib/worker/export-token.js +0 -1
- package/lib/worker/export-token.js.map +1 -1
- package/lib/worker/message.d.ts +1 -1
- package/lib/worker/message.d.ts.map +1 -1
- package/lib/worker/message.js +4 -2
- package/lib/worker/message.js.map +1 -1
- package/lib/worker/sms.js +17 -17
- package/lib/worker/sms.js.map +1 -1
- package/lib/worker/twilio.js +4 -0
- package/lib/worker/twilio.js.map +1 -1
- package/package.json +22 -33
- package/src/delivery/send-message.ts +1 -1
- package/src/enrollments/licensed.ts +15 -2
- package/src/files/gridfs/adapter.ts +12 -7
- package/src/files/gridfs/handler-express.ts +23 -25
- package/src/files/gridfs/handler-fastify.ts +53 -14
- package/src/files/minio/handler-express.ts +4 -7
- package/src/files/minio/handler-fastify.ts +2 -2
- package/src/files/minio/index.ts +16 -16
- package/src/filters/local-search.ts +1 -1
- package/src/filters/strict-equal.ts +0 -21
- package/src/payment/apple-iap/adapter.ts +12 -14
- package/src/payment/apple-iap/db/AppleTransactionsCollection.ts +1 -1
- package/src/payment/apple-iap/handler-express.ts +17 -11
- package/src/payment/apple-iap/handler-fastify.ts +19 -9
- package/src/payment/apple-iap/module.ts +9 -4
- package/src/payment/braintree.ts +4 -1
- package/src/payment/cryptopay/db/CryptopayTransactions.ts +1 -1
- package/src/payment/cryptopay/derive-btc-address.ts +1 -3
- package/src/payment/cryptopay/derive-eth-address.ts +5 -3
- package/src/payment/cryptopay/handle-webhook.ts +6 -6
- package/src/payment/cryptopay/handler-express.ts +4 -7
- package/src/payment/cryptopay/handler-fastify.ts +1 -1
- package/src/payment/cryptopay/module.ts +8 -5
- package/src/payment/cryptopay/plugin.ts +21 -4
- package/src/payment/datatrans-v2/handler-express.ts +17 -12
- package/src/payment/datatrans-v2/handler-fastify.ts +15 -6
- package/src/payment/datatrans-v2/index.ts +82 -50
- package/src/payment/paypal-checkout.ts +4 -2
- package/src/payment/payrexx/api/index.ts +1 -1
- package/src/payment/payrexx/api/makeFetcher.ts +2 -2
- package/src/payment/payrexx/handler-express.ts +24 -32
- package/src/payment/payrexx/handler-fastify.ts +33 -33
- package/src/payment/payrexx/index.ts +26 -16
- package/src/payment/postfinance-checkout/api-client.ts +13 -8
- package/src/payment/postfinance-checkout/handler-express.ts +8 -8
- package/src/payment/postfinance-checkout/handler-fastify.ts +7 -4
- package/src/payment/postfinance-checkout/index.ts +20 -8
- package/src/payment/saferpay/adapter.ts +14 -2
- package/src/payment/saferpay/handler-express.ts +14 -13
- package/src/payment/saferpay/handler-fastify.ts +14 -9
- package/src/payment/stripe/handler-express.ts +33 -33
- package/src/payment/stripe/handler-fastify.ts +40 -27
- package/src/payment/stripe/index.ts +18 -16
- package/src/payment/stripe/stripe.ts +17 -12
- package/src/pricing/delivery-swiss-tax.ts +16 -31
- package/src/pricing/order-discount.ts +6 -4
- package/src/pricing/order-round.ts +5 -4
- package/src/pricing/product-catalog-price-options.ts +67 -0
- package/src/pricing/product-catalog-price.ts +25 -2
- package/src/pricing/product-price-rateconversion.ts +3 -3
- package/src/pricing/product-swiss-tax.ts +39 -40
- package/src/pricing/tax/ch.ts +33 -7
- package/src/pricing/utils/isDeliveryAddressInCountry.test.ts +106 -0
- package/src/pricing/utils/isDeliveryAddressInCountry.ts +26 -0
- package/src/warehousing/eth-minter.ts +30 -11
- package/src/worker/budgetsms.ts +1 -1
- package/src/worker/bulk-import.ts +12 -53
- package/src/worker/email.ts +30 -8
- package/src/worker/enrollment-order-generator.ts +14 -72
- package/src/worker/error-notifications.ts +2 -2
- package/src/worker/export-token.ts +0 -1
- package/src/worker/message.ts +5 -3
- package/src/worker/twilio.ts +10 -3
- package/src/pricing/product-swiss-tax.test.ts +0 -139
|
@@ -1,24 +1,6 @@
|
|
|
1
1
|
import { ProductPricingDirector, ProductPricingAdapter, ProductPricingRowCategory, } from '@unchainedshop/core';
|
|
2
|
-
import { SwissTaxCategories } from './tax/ch.js';
|
|
3
|
-
|
|
4
|
-
const { product, order } = context;
|
|
5
|
-
const productSpecialTaxTag = product.tags?.find((tag) => tag?.trim().toLowerCase().startsWith('swiss-tax-category:'));
|
|
6
|
-
const taxCategory = Object.values(SwissTaxCategories).find((t) => `swiss-tax-category:${t.value}` === productSpecialTaxTag?.trim().toLowerCase()) || SwissTaxCategories.DEFAULT;
|
|
7
|
-
return taxCategory.rate(order?.ordered);
|
|
8
|
-
};
|
|
9
|
-
export const isDeliveryAddressInSwitzerland = async ({ order, countryCode: forceCountryCode, modules, }) => {
|
|
10
|
-
let countryCode = forceCountryCode?.toUpperCase().trim() || order.countryCode;
|
|
11
|
-
if (order) {
|
|
12
|
-
const orderDelivery = await modules.orders.deliveries.findDelivery({
|
|
13
|
-
orderDeliveryId: order.deliveryId,
|
|
14
|
-
});
|
|
15
|
-
const address = orderDelivery?.context?.address || order.billingAddress;
|
|
16
|
-
if (address?.countryCode > '') {
|
|
17
|
-
countryCode = address.countryCode?.toUpperCase().trim();
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
return countryCode === 'CH' || countryCode === 'LI';
|
|
21
|
-
};
|
|
2
|
+
import { resolveTaxCategoryFromDeliveryProvider, resolveTaxCategoryFromProduct, SwissTaxCategories, } from './tax/ch.js';
|
|
3
|
+
import isDeliveryAddressInCountry from './utils/isDeliveryAddressInCountry.js';
|
|
22
4
|
export const ProductSwissTax = {
|
|
23
5
|
...ProductPricingAdapter,
|
|
24
6
|
key: 'shop.unchained.pricing.product-swiss-tax',
|
|
@@ -34,10 +16,32 @@ export const ProductSwissTax = {
|
|
|
34
16
|
return {
|
|
35
17
|
...pricingAdapter,
|
|
36
18
|
calculate: async () => {
|
|
37
|
-
|
|
19
|
+
const orderDelivery = context.order?.deliveryId
|
|
20
|
+
? await context.modules.orders.deliveries.findDelivery({
|
|
21
|
+
orderDeliveryId: context.order?.deliveryId,
|
|
22
|
+
})
|
|
23
|
+
: null;
|
|
24
|
+
if (!isDeliveryAddressInCountry({
|
|
25
|
+
...context,
|
|
26
|
+
orderDelivery,
|
|
27
|
+
}, ['CH', 'LI'])) {
|
|
38
28
|
return pricingAdapter.calculate();
|
|
39
29
|
}
|
|
40
|
-
|
|
30
|
+
let taxCategory = resolveTaxCategoryFromProduct(context.product);
|
|
31
|
+
if (!taxCategory) {
|
|
32
|
+
// No special tax category found, use default from delivery provider
|
|
33
|
+
const provider = orderDelivery?.deliveryProviderId
|
|
34
|
+
? await context.modules.delivery.findProvider({
|
|
35
|
+
deliveryProviderId: orderDelivery?.deliveryProviderId,
|
|
36
|
+
})
|
|
37
|
+
: null;
|
|
38
|
+
if (provider)
|
|
39
|
+
taxCategory = resolveTaxCategoryFromDeliveryProvider(provider);
|
|
40
|
+
}
|
|
41
|
+
// If still no tax category found, use default
|
|
42
|
+
if (!taxCategory)
|
|
43
|
+
taxCategory = SwissTaxCategories.DEFAULT;
|
|
44
|
+
const taxRate = taxCategory.rate(context.order?.ordered);
|
|
41
45
|
ProductPricingAdapter.log(`ProductSwissTax -> Tax Multiplicator: ${taxRate}`);
|
|
42
46
|
params.calculationSheet.filterBy({ isTaxable: true }).forEach(({ isNetPrice, ...row }) => {
|
|
43
47
|
if (!isNetPrice) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"product-swiss-tax.js","sourceRoot":"","sources":["../../src/pricing/product-swiss-tax.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,qBAAqB,
|
|
1
|
+
{"version":3,"file":"product-swiss-tax.js","sourceRoot":"","sources":["../../src/pricing/product-swiss-tax.ts"],"names":[],"mappings":"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"}
|
package/lib/pricing/tax/ch.d.ts
CHANGED
|
@@ -1,5 +1,10 @@
|
|
|
1
|
-
|
|
1
|
+
import { DeliveryProvider } from '@unchainedshop/core-delivery';
|
|
2
|
+
import { Product } from '@unchainedshop/core-products';
|
|
3
|
+
export interface SwissTaxCategoryResolver {
|
|
2
4
|
value: string;
|
|
3
5
|
rate: (referenceDate?: Date) => number;
|
|
4
|
-
}
|
|
6
|
+
}
|
|
7
|
+
export declare const SwissTaxCategories: Record<string, SwissTaxCategoryResolver>;
|
|
8
|
+
export declare const resolveTaxCategoryFromDeliveryProvider: (provider: DeliveryProvider) => SwissTaxCategoryResolver | null;
|
|
9
|
+
export declare const resolveTaxCategoryFromProduct: (product: Product) => SwissTaxCategoryResolver | null;
|
|
5
10
|
//# sourceMappingURL=ch.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ch.d.ts","sourceRoot":"","sources":["../../../src/pricing/tax/ch.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ch.d.ts","sourceRoot":"","sources":["../../../src/pricing/tax/ch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AAMvD,MAAM,WAAW,wBAAwB;IACvC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,CAAC,aAAa,CAAC,EAAE,IAAI,KAAK,MAAM,CAAC;CACxC;AAED,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,wBAAwB,CA4BvE,CAAC;AAEF,eAAO,MAAM,sCAAsC,GACjD,UAAU,gBAAgB,KACzB,wBAAwB,GAAG,IAU7B,CAAC;AAEF,eAAO,MAAM,6BAA6B,GAAI,SAAS,OAAO,KAAG,wBAAwB,GAAG,IAQ3F,CAAC"}
|
package/lib/pricing/tax/ch.js
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
const startOf2024 = new Date('2024-01-01T00:00:00.000+0100');
|
|
2
|
-
// https://www.estv.admin.ch/estv/en/home/value-added-tax/vat-rates-switzerland.html
|
|
3
2
|
export const SwissTaxCategories = {
|
|
4
3
|
DEFAULT: {
|
|
5
4
|
value: 'default',
|
|
@@ -29,4 +28,20 @@ export const SwissTaxCategories = {
|
|
|
29
28
|
},
|
|
30
29
|
},
|
|
31
30
|
};
|
|
31
|
+
export const resolveTaxCategoryFromDeliveryProvider = (provider) => {
|
|
32
|
+
const taxCategoryFromProvider = provider?.configuration
|
|
33
|
+
?.find(({ key }) => {
|
|
34
|
+
if (key === 'swiss-tax-category')
|
|
35
|
+
return true;
|
|
36
|
+
return null;
|
|
37
|
+
})
|
|
38
|
+
?.value?.toUpperCase();
|
|
39
|
+
const taxCategory = taxCategoryFromProvider ? SwissTaxCategories[taxCategoryFromProvider] : null;
|
|
40
|
+
return taxCategory;
|
|
41
|
+
};
|
|
42
|
+
export const resolveTaxCategoryFromProduct = (product) => {
|
|
43
|
+
const productSpecialTaxTag = product.tags?.find((tag) => tag?.trim().toLowerCase().startsWith('swiss-tax-category:'));
|
|
44
|
+
const taxCategory = Object.values(SwissTaxCategories).find((t) => `swiss-tax-category:${t.value}` === productSpecialTaxTag?.trim().toLowerCase());
|
|
45
|
+
return taxCategory || null;
|
|
46
|
+
};
|
|
32
47
|
//# sourceMappingURL=ch.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ch.js","sourceRoot":"","sources":["../../../src/pricing/tax/ch.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ch.js","sourceRoot":"","sources":["../../../src/pricing/tax/ch.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,GAAG,IAAI,IAAI,CAAC,8BAA8B,CAAC,CAAC;AAS7D,MAAM,CAAC,MAAM,kBAAkB,GAA6C;IAC1E,OAAO,EAAE;QACP,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,CAAC,aAAa,GAAG,IAAI,IAAI,EAAE,EAAE,EAAE;YACnC,IAAI,aAAa,CAAC,OAAO,EAAE,GAAG,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC;gBACpD,OAAO,KAAK,CAAC;YACf,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;KACF;IACD,OAAO,EAAE;QACP,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,CAAC,aAAa,GAAG,IAAI,IAAI,EAAE,EAAE,EAAE;YACnC,IAAI,aAAa,CAAC,OAAO,EAAE,GAAG,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC;gBACpD,OAAO,KAAK,CAAC;YACf,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;KACF;IACD,OAAO,EAAE;QACP,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,CAAC,aAAa,GAAG,IAAI,IAAI,EAAE,EAAE,EAAE;YACnC,IAAI,aAAa,CAAC,OAAO,EAAE,GAAG,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC;gBACpD,OAAO,KAAK,CAAC;YACf,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;KACF;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,sCAAsC,GAAG,CACpD,QAA0B,EACO,EAAE;IACnC,MAAM,uBAAuB,GAAG,QAAQ,EAAE,aAAa;QACrD,EAAE,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE;QACjB,IAAI,GAAG,KAAK,oBAAoB;YAAE,OAAO,IAAI,CAAC;QAC9C,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;QACF,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;IAEzB,MAAM,WAAW,GAAG,uBAAuB,CAAC,CAAC,CAAC,kBAAkB,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACjG,OAAO,WAAW,CAAC;AACrB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,OAAgB,EAAmC,EAAE;IACjG,MAAM,oBAAoB,GAAG,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CACtD,GAAG,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAC5D,CAAC;IACF,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,IAAI,CACxD,CAAC,CAAC,EAAE,EAAE,CAAC,sBAAsB,CAAC,CAAC,KAAK,EAAE,KAAK,oBAAoB,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,CACtF,CAAC;IACF,OAAO,WAAW,IAAI,IAAI,CAAC;AAC7B,CAAC,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { Order, OrderDelivery } from '@unchainedshop/core-orders';
|
|
2
|
+
export default function isDeliveryAddressInCountry({ orderDelivery, order, countryCode: forceCountryCode, }: {
|
|
3
|
+
orderDelivery?: OrderDelivery | null;
|
|
4
|
+
order?: Order | null;
|
|
5
|
+
countryCode?: string | null;
|
|
6
|
+
}, allowedCountryCodes: string[]): boolean;
|
|
7
|
+
//# sourceMappingURL=isDeliveryAddressInCountry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isDeliveryAddressInCountry.d.ts","sourceRoot":"","sources":["../../../src/pricing/utils/isDeliveryAddressInCountry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAElE,MAAM,CAAC,OAAO,UAAU,0BAA0B,CAChD,EACE,aAAa,EACb,KAAK,EACL,WAAW,EAAE,gBAAuB,GACrC,EAAE;IACD,aAAa,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;IACrC,KAAK,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B,EACD,mBAAmB,EAAE,MAAM,EAAE,WAa9B"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export default function isDeliveryAddressInCountry({ orderDelivery, order, countryCode: forceCountryCode = null, }, allowedCountryCodes) {
|
|
2
|
+
let countryCode = forceCountryCode?.toUpperCase().trim() || order?.countryCode;
|
|
3
|
+
if (orderDelivery || order) {
|
|
4
|
+
const address = orderDelivery?.context?.address || order?.billingAddress;
|
|
5
|
+
if (address?.countryCode > '') {
|
|
6
|
+
countryCode = address.countryCode?.toUpperCase().trim();
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
if (!countryCode)
|
|
10
|
+
return false;
|
|
11
|
+
return allowedCountryCodes.includes(countryCode);
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=isDeliveryAddressInCountry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isDeliveryAddressInCountry.js","sourceRoot":"","sources":["../../../src/pricing/utils/isDeliveryAddressInCountry.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,OAAO,UAAU,0BAA0B,CAChD,EACE,aAAa,EACb,KAAK,EACL,WAAW,EAAE,gBAAgB,GAAG,IAAI,GAKrC,EACD,mBAA6B;IAE7B,IAAI,WAAW,GAAG,gBAAgB,EAAE,WAAW,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,EAAE,WAAW,CAAC;IAE/E,IAAI,aAAa,IAAI,KAAK,EAAE,CAAC;QAC3B,MAAM,OAAO,GAAG,aAAa,EAAE,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,cAAc,CAAC;QACzE,IAAI,OAAO,EAAE,WAAW,GAAG,EAAE,EAAE,CAAC;YAC9B,WAAW,GAAG,OAAO,CAAC,WAAW,EAAE,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;QAC1D,CAAC;IACH,CAAC;IAED,IAAI,CAAC,WAAW;QAAE,OAAO,KAAK,CAAC;IAC/B,OAAO,mBAAmB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;AACnD,CAAC"}
|
|
@@ -1,10 +1,12 @@
|
|
|
1
|
-
import { WarehousingDirector, WarehousingAdapter, } from '@unchainedshop/core';
|
|
1
|
+
import { WarehousingError, WarehousingDirector, WarehousingAdapter, } from '@unchainedshop/core';
|
|
2
2
|
import { WarehousingProviderType } from '@unchainedshop/core-warehousing';
|
|
3
3
|
import { ProductContractStandard, ProductTypes } from '@unchainedshop/core-products';
|
|
4
4
|
import { systemLocale } from '@unchainedshop/utils';
|
|
5
5
|
import { generateDbObjectId } from '@unchainedshop/mongodb';
|
|
6
6
|
import { getFileAdapter } from '@unchainedshop/core-files';
|
|
7
|
+
import { createLogger } from '@unchainedshop/logger';
|
|
7
8
|
const { MINTER_TOKEN_OFFSET = '0', ROOT_URL = 'http://localhost:4010' } = process.env;
|
|
9
|
+
const logger = createLogger('unchained:eth-minter');
|
|
8
10
|
const ETHMinter = {
|
|
9
11
|
...WarehousingAdapter,
|
|
10
12
|
key: 'shop.unchained.warehousing.infinite-minter',
|
|
@@ -23,7 +25,7 @@ const ETHMinter = {
|
|
|
23
25
|
? { contractAddress: contractStandard }
|
|
24
26
|
: {
|
|
25
27
|
contractAddress: contractStandard,
|
|
26
|
-
|
|
28
|
+
tokenSerialNumber: tokenId,
|
|
27
29
|
});
|
|
28
30
|
const tokensCreated = existingTokens.reduce((acc, curToken) => {
|
|
29
31
|
return acc + curToken.quantity;
|
|
@@ -36,6 +38,10 @@ const ETHMinter = {
|
|
|
36
38
|
return product?.type === ProductTypes.TokenizedProduct;
|
|
37
39
|
},
|
|
38
40
|
configurationError() {
|
|
41
|
+
if (contractStandard === 'ERC1155' && !tokenId) {
|
|
42
|
+
logger.error(`Token ID is required for ERC1155 contract standard (productId: ${product._id})`);
|
|
43
|
+
return WarehousingError.INCOMPLETE_CONFIGURATION;
|
|
44
|
+
}
|
|
39
45
|
return null;
|
|
40
46
|
},
|
|
41
47
|
stock: async () => {
|
|
@@ -49,11 +55,14 @@ const ETHMinter = {
|
|
|
49
55
|
const chainId = configuration.find(({ key }) => key === 'chainId')?.value || undefined;
|
|
50
56
|
const meta = { contractStandard };
|
|
51
57
|
const tokensCreated = await getTokensCreated();
|
|
58
|
+
if (!orderPosition) {
|
|
59
|
+
throw new Error('Order position not found in context');
|
|
60
|
+
}
|
|
52
61
|
if (contractStandard === 'ERC721') {
|
|
53
|
-
// ERC721 is non-fungible, thus every
|
|
54
|
-
const items = new Array(orderPosition
|
|
62
|
+
// ERC721 is non-fungible, thus every tokenSerialNumber unique!
|
|
63
|
+
const items = new Array(orderPosition.quantity).fill(null).map((_, i) => ({
|
|
55
64
|
_id: generateDbObjectId(),
|
|
56
|
-
|
|
65
|
+
tokenSerialNumber: Number(parseInt(MINTER_TOKEN_OFFSET, 10) + tokensCreated + (i + 1)).toString(),
|
|
57
66
|
contractAddress,
|
|
58
67
|
quantity: 1,
|
|
59
68
|
chainId,
|
|
@@ -65,18 +74,21 @@ const ETHMinter = {
|
|
|
65
74
|
return [
|
|
66
75
|
{
|
|
67
76
|
_id: generateDbObjectId(),
|
|
68
|
-
|
|
77
|
+
tokenSerialNumber: tokenId,
|
|
69
78
|
contractAddress,
|
|
70
|
-
quantity: orderPosition
|
|
79
|
+
quantity: orderPosition.quantity,
|
|
71
80
|
chainId,
|
|
72
81
|
meta,
|
|
73
82
|
},
|
|
74
83
|
];
|
|
75
84
|
},
|
|
76
|
-
tokenMetadata: async (
|
|
85
|
+
tokenMetadata: async (tokenSerialNumber) => {
|
|
77
86
|
// Metadata standards supported
|
|
78
87
|
// https://eips.ethereum.org/EIPS/eip-1155 (backward compatible with 721)
|
|
79
88
|
// https://eips.ethereum.org/EIPS/eip-721
|
|
89
|
+
if (!product) {
|
|
90
|
+
throw new Error('Product not found in context');
|
|
91
|
+
}
|
|
80
92
|
const allLanguages = await modules.languages.findLanguages({
|
|
81
93
|
includeInactive: false,
|
|
82
94
|
});
|
|
@@ -85,14 +97,14 @@ const ETHMinter = {
|
|
|
85
97
|
limit: 1,
|
|
86
98
|
});
|
|
87
99
|
const file = firstMedia && (await modules.files.findFile({ fileId: firstMedia.mediaId }));
|
|
88
|
-
const
|
|
89
|
-
const signedUrl = await
|
|
100
|
+
const fileAdapter = file && getFileAdapter();
|
|
101
|
+
const signedUrl = await fileAdapter?.createDownloadURL(file);
|
|
90
102
|
const url = signedUrl && (await modules.files.normalizeUrl(signedUrl, {}));
|
|
91
103
|
const text = await modules.products.texts.findLocalizedText({
|
|
92
104
|
productId: product._id,
|
|
93
105
|
locale: locale || systemLocale,
|
|
94
106
|
});
|
|
95
|
-
const name = `${text.title} #${
|
|
107
|
+
const name = `${text.title} #${tokenSerialNumber}`;
|
|
96
108
|
const isDefaultLanguageActive = locale ? locale.language === systemLocale.language : true;
|
|
97
109
|
const localization = isDefaultLanguageActive
|
|
98
110
|
? {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eth-minter.js","sourceRoot":"","sources":["../../src/warehousing/eth-minter.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"eth-minter.js","sourceRoot":"","sources":["../../src/warehousing/eth-minter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bulk-import.d.ts","sourceRoot":"","sources":["../../src/worker/bulk-import.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiC,cAAc,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"bulk-import.d.ts","sourceRoot":"","sources":["../../src/worker/bulk-import.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiC,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAKpF,eAAO,MAAM,gBAAgB,EAAE,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAqErE,CAAC"}
|
|
@@ -1,35 +1,6 @@
|
|
|
1
1
|
import { WorkerDirector, WorkerAdapter } from '@unchainedshop/core';
|
|
2
2
|
import { createLogger } from '@unchainedshop/logger';
|
|
3
|
-
|
|
4
|
-
import { EventIterator } from 'event-iterator';
|
|
5
|
-
const logger = createLogger('unchained:worker:bulk-import');
|
|
6
|
-
const streamPayloadToBulkImporter = async (bulkImporter, payloadId, unchainedAPI) => {
|
|
7
|
-
logger.trace(`parseAsync start`);
|
|
8
|
-
const readStream = await unchainedAPI.services.files.createDownloadStream({ fileId: payloadId });
|
|
9
|
-
if (!readStream) {
|
|
10
|
-
throw new Error('The current file adapter does not support streams when downloading required for streamed events. Please use a different file adapter.');
|
|
11
|
-
}
|
|
12
|
-
const eventIterator = new EventIterator((queue) => {
|
|
13
|
-
const jsonStream = JSONStream.parse('events.*'); // rows, ANYTHING, doc
|
|
14
|
-
jsonStream.on('data', queue.push);
|
|
15
|
-
jsonStream.on('close', queue.stop);
|
|
16
|
-
jsonStream.on('error', queue.fail);
|
|
17
|
-
queue.on('highWater', () => readStream.pause());
|
|
18
|
-
queue.on('lowWater', () => readStream.resume());
|
|
19
|
-
readStream.pipe(jsonStream);
|
|
20
|
-
readStream.on('error', queue.fail);
|
|
21
|
-
return () => {
|
|
22
|
-
jsonStream.removeListener('data', queue.push);
|
|
23
|
-
jsonStream.removeListener('close', queue.stop);
|
|
24
|
-
jsonStream.removeListener('error', queue.fail);
|
|
25
|
-
jsonStream.destroy();
|
|
26
|
-
};
|
|
27
|
-
}, { highWaterMark: 100, lowWaterMark: 5 });
|
|
28
|
-
for await (const event of eventIterator) {
|
|
29
|
-
await bulkImporter.prepare(event, unchainedAPI);
|
|
30
|
-
}
|
|
31
|
-
logger.trace(`parseAsync done`);
|
|
32
|
-
};
|
|
3
|
+
const logger = createLogger('unchained:bulk-import');
|
|
33
4
|
export const BulkImportWorker = {
|
|
34
5
|
...WorkerAdapter,
|
|
35
6
|
key: 'shop.unchained.worker-plugin.bulk-import',
|
|
@@ -47,7 +18,13 @@ export const BulkImportWorker = {
|
|
|
47
18
|
});
|
|
48
19
|
if (rawPayload.payloadId) {
|
|
49
20
|
// stream payload from gridfs
|
|
50
|
-
|
|
21
|
+
const readStream = await unchainedAPI.services.files.createDownloadStream({
|
|
22
|
+
fileId: rawPayload.payloadId,
|
|
23
|
+
});
|
|
24
|
+
if (!readStream) {
|
|
25
|
+
throw new Error('Could not create download stream from uploaded file');
|
|
26
|
+
}
|
|
27
|
+
await unchainedAPI.bulkImporter.pipeEventStream(readStream, bulkImporter, unchainedAPI);
|
|
51
28
|
}
|
|
52
29
|
else {
|
|
53
30
|
const { events } = rawPayload;
|
|
@@ -55,6 +32,7 @@ export const BulkImportWorker = {
|
|
|
55
32
|
throw new Error('No events submitted');
|
|
56
33
|
await events.reduce(async (currentEventPromise, nextEvent) => {
|
|
57
34
|
await currentEventPromise;
|
|
35
|
+
await bulkImporter.validate(nextEvent);
|
|
58
36
|
return bulkImporter.prepare(nextEvent, unchainedAPI);
|
|
59
37
|
}, Promise.resolve());
|
|
60
38
|
}
|
|
@@ -63,13 +41,13 @@ export const BulkImportWorker = {
|
|
|
63
41
|
if (error) {
|
|
64
42
|
return {
|
|
65
43
|
success: false,
|
|
66
|
-
result,
|
|
44
|
+
result: result,
|
|
67
45
|
error,
|
|
68
46
|
};
|
|
69
47
|
}
|
|
70
48
|
return {
|
|
71
49
|
success: true,
|
|
72
|
-
result,
|
|
50
|
+
result: result,
|
|
73
51
|
};
|
|
74
52
|
}
|
|
75
53
|
catch (err) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bulk-import.js","sourceRoot":"","sources":["../../src/worker/bulk-import.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,aAAa,EAAkB,MAAM,qBAAqB,CAAC;AACpF,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"bulk-import.js","sourceRoot":"","sources":["../../src/worker/bulk-import.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,aAAa,EAAkB,MAAM,qBAAqB,CAAC;AACpF,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAErD,MAAM,MAAM,GAAG,YAAY,CAAC,uBAAuB,CAAC,CAAC;AAErD,MAAM,CAAC,MAAM,gBAAgB,GAA6C;IACxE,GAAG,aAAa;IAEhB,GAAG,EAAE,0CAA0C;IAC/C,KAAK,EAAE,aAAa;IACpB,OAAO,EAAE,OAAO;IAChB,IAAI,EAAE,aAAa;IACnB,sBAAsB,EAAE,CAAC,EAAE,6CAA6C;IAExE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,EAAE;QACzC,IAAI,CAAC;YACH,MAAM,EACJ,4BAA4B,GAAG,KAAK,EACpC,qBAAqB,GAAG,KAAK,EAC7B,+BAA+B,GAAG,KAAK,GACxC,GAAG,UAAU,CAAC;YAEf,MAAM,YAAY,GAAG,YAAY,CAAC,YAAY,CAAC,kBAAkB,CAAC;gBAChE,4BAA4B;gBAC5B,+BAA+B;gBAC/B,qBAAqB;aACtB,CAAC,CAAC;YAEH,IAAI,UAAU,CAAC,SAAS,EAAE,CAAC;gBACzB,6BAA6B;gBAC7B,MAAM,UAAU,GAAG,MAAM,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,oBAAoB,CAAC;oBACxE,MAAM,EAAE,UAAU,CAAC,SAAS;iBAC7B,CAAC,CAAC;gBACH,IAAI,CAAC,UAAU,EAAE,CAAC;oBAChB,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;gBACzE,CAAC;gBACD,MAAM,YAAY,CAAC,YAAY,CAAC,eAAe,CAAC,UAAU,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC;YAC1F,CAAC;iBAAM,CAAC;gBACN,MAAM,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC;gBAC9B,IAAI,CAAC,MAAM,EAAE,MAAM;oBAAE,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;gBAE5D,MAAM,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,mBAAmB,EAAE,SAAS,EAAE,EAAE;oBAC3D,MAAM,mBAAmB,CAAC;oBAC1B,MAAM,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;oBACvC,OAAO,YAAY,CAAC,OAAO,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;gBACvD,CAAC,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;YACxB,CAAC;YAED,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,MAAM,YAAY,CAAC,OAAO,EAAE,CAAC;YACrD,MAAM,YAAY,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC;YAElD,IAAI,KAAK,EAAE,CAAC;gBACV,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,MAAM,EAAE,MAAO;oBACf,KAAK;iBACN,CAAC;YACJ,CAAC;YACD,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,MAAM,EAAE,MAAO;aAChB,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAClB,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE;oBACL,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,OAAO,EAAE,GAAG,CAAC,OAAO;oBACpB,KAAK,EAAE,GAAG,CAAC,KAAK;iBACjB;aACF,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAC;AAEF,cAAc,CAAC,eAAe,CAAC,gBAAgB,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"email.d.ts","sourceRoot":"","sources":["../../src/worker/email.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"email.d.ts","sourceRoot":"","sources":["../../src/worker/email.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,6BAA6B,eAEzC,CAAC"}
|
package/lib/worker/email.js
CHANGED
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
import { WorkerDirector, WorkerAdapter } from '@unchainedshop/core';
|
|
2
2
|
import nodemailer from 'nodemailer';
|
|
3
|
+
import { spawn } from 'node:child_process';
|
|
4
|
+
import { writeFile, mkdtemp } from 'node:fs/promises';
|
|
5
|
+
import { tmpdir } from 'node:os';
|
|
6
|
+
import { join } from 'node:path';
|
|
3
7
|
export const checkEmailInterceptionEnabled = () => {
|
|
4
8
|
return process.env.NODE_ENV !== 'production' && !process.env.UNCHAINED_DISABLE_EMAIL_INTERCEPTION;
|
|
5
9
|
};
|
|
@@ -16,9 +20,14 @@ const buildLink = async ({ filename, content, href, contentType, encoding, path
|
|
|
16
20
|
return '';
|
|
17
21
|
};
|
|
18
22
|
const openInBrowser = async (options) => {
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
23
|
+
const command = {
|
|
24
|
+
darwin: 'open',
|
|
25
|
+
win32: 'explorer.exe',
|
|
26
|
+
linux: 'xdg-open',
|
|
27
|
+
}[process.platform];
|
|
28
|
+
if (!command) {
|
|
29
|
+
return false;
|
|
30
|
+
}
|
|
22
31
|
const messageBody = options.html || options.text.replace(/(\r\n|\n|\r)/gm, '<br/>');
|
|
23
32
|
const attachmentLinks = await Promise.all((options.attachments || []).map(buildLink));
|
|
24
33
|
const content = `
|
|
@@ -41,10 +50,19 @@ const openInBrowser = async (options) => {
|
|
|
41
50
|
${messageBody}
|
|
42
51
|
</body>
|
|
43
52
|
</html>`;
|
|
44
|
-
|
|
45
|
-
const
|
|
46
|
-
|
|
47
|
-
|
|
53
|
+
// Create a temporary directory and file
|
|
54
|
+
const tempDir = await mkdtemp(join(tmpdir(), 'unchained-email-'));
|
|
55
|
+
const tempFile = join(tempDir, 'email-preview.html');
|
|
56
|
+
await writeFile(tempFile, content, 'utf8');
|
|
57
|
+
return new Promise((resolve) => {
|
|
58
|
+
const child = spawn(command, [tempFile], {
|
|
59
|
+
detached: true,
|
|
60
|
+
stdio: 'ignore',
|
|
61
|
+
});
|
|
62
|
+
child.unref();
|
|
63
|
+
// Resolve immediately after spawning since process is detached
|
|
64
|
+
resolve(true);
|
|
65
|
+
});
|
|
48
66
|
};
|
|
49
67
|
const EmailWorkerPlugin = {
|
|
50
68
|
...WorkerAdapter,
|
package/lib/worker/email.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"email.js","sourceRoot":"","sources":["../../src/worker/email.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,aAAa,EAAkB,MAAM,qBAAqB,CAAC;AACpF,OAAO,UAAU,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"email.js","sourceRoot":"","sources":["../../src/worker/email.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enrollment-order-generator.d.ts","sourceRoot":"","sources":["../../src/worker/enrollment-order-generator.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"enrollment-order-generator.d.ts","sourceRoot":"","sources":["../../src/worker/enrollment-order-generator.ts"],"names":[],"mappings":"AAqFA,eAAO,MAAM,oCAAoC,YAQhD,CAAC"}
|
|
@@ -1,49 +1,5 @@
|
|
|
1
1
|
import { enrollmentsSettings, EnrollmentStatus } from '@unchainedshop/core-enrollments';
|
|
2
|
-
import { EnrollmentDirector, WorkerDirector, WorkerAdapter
|
|
3
|
-
const generateOrder = async (enrollment, params, unchainedAPI) => {
|
|
4
|
-
if (!enrollment.payment || !enrollment.delivery)
|
|
5
|
-
return null;
|
|
6
|
-
const { modules, services } = unchainedAPI;
|
|
7
|
-
const { orderPositions, ...configuration } = params;
|
|
8
|
-
let order = await modules.orders.create({
|
|
9
|
-
userId: enrollment.userId,
|
|
10
|
-
currencyCode: enrollment.currencyCode,
|
|
11
|
-
countryCode: enrollment.countryCode,
|
|
12
|
-
contact: enrollment.contact,
|
|
13
|
-
billingAddress: enrollment.billingAddress,
|
|
14
|
-
originEnrollmentId: enrollment._id,
|
|
15
|
-
...configuration,
|
|
16
|
-
});
|
|
17
|
-
const orderId = order._id;
|
|
18
|
-
if (orderPositions) {
|
|
19
|
-
await Promise.all(orderPositions.map((orderPosition) => modules.orders.positions.addProductItem(orderPosition)));
|
|
20
|
-
}
|
|
21
|
-
else {
|
|
22
|
-
const product = await modules.products.findProduct({
|
|
23
|
-
productId: enrollment.productId,
|
|
24
|
-
});
|
|
25
|
-
await modules.orders.positions.addProductItem({
|
|
26
|
-
quantity: 1,
|
|
27
|
-
productId: product._id,
|
|
28
|
-
originalProductId: product._id,
|
|
29
|
-
orderId: order._id,
|
|
30
|
-
});
|
|
31
|
-
}
|
|
32
|
-
const { paymentProviderId, context: paymentContext } = enrollment.payment;
|
|
33
|
-
if (paymentProviderId) {
|
|
34
|
-
await modules.orders.setPaymentProvider(orderId, paymentProviderId);
|
|
35
|
-
}
|
|
36
|
-
const { deliveryProviderId, context: deliveryContext } = enrollment.delivery;
|
|
37
|
-
if (deliveryProviderId) {
|
|
38
|
-
await modules.orders.setDeliveryProvider(orderId, deliveryProviderId);
|
|
39
|
-
}
|
|
40
|
-
await services.orders.updateCalculation(orderId);
|
|
41
|
-
order = await services.orders.checkoutOrder(order._id, {
|
|
42
|
-
paymentContext,
|
|
43
|
-
deliveryContext,
|
|
44
|
-
});
|
|
45
|
-
return order;
|
|
46
|
-
};
|
|
2
|
+
import { EnrollmentDirector, WorkerDirector, WorkerAdapter } from '@unchainedshop/core';
|
|
47
3
|
const GenerateOrderWorker = {
|
|
48
4
|
...WorkerAdapter,
|
|
49
5
|
key: 'shop.unchained.worker-plugin.generate-enrollment-orders',
|
|
@@ -51,13 +7,16 @@ const GenerateOrderWorker = {
|
|
|
51
7
|
version: '1.0.0',
|
|
52
8
|
type: 'ENROLLMENT_ORDER_GENERATOR',
|
|
53
9
|
doWork: async (input, unchainedAPI) => {
|
|
54
|
-
const { modules } = unchainedAPI;
|
|
10
|
+
const { modules, services } = unchainedAPI;
|
|
55
11
|
const enrollments = await modules.enrollments.findEnrollments({
|
|
56
12
|
status: [EnrollmentStatus.ACTIVE, EnrollmentStatus.PAUSED],
|
|
57
13
|
});
|
|
58
14
|
const errors = (await Promise.all(enrollments.map(async (enrollment) => {
|
|
59
15
|
try {
|
|
60
|
-
const
|
|
16
|
+
const product = await unchainedAPI.modules.products.findProduct({
|
|
17
|
+
productId: enrollment.productId,
|
|
18
|
+
});
|
|
19
|
+
const director = await EnrollmentDirector.actions({ enrollment, product: product }, unchainedAPI);
|
|
61
20
|
const period = await director.nextPeriod();
|
|
62
21
|
if (period) {
|
|
63
22
|
if (period.isTrial) {
|
|
@@ -67,11 +26,10 @@ const GenerateOrderWorker = {
|
|
|
67
26
|
return null;
|
|
68
27
|
}
|
|
69
28
|
const configuration = await director.configurationForOrder({
|
|
70
|
-
...input,
|
|
71
29
|
period,
|
|
72
30
|
});
|
|
73
31
|
if (configuration) {
|
|
74
|
-
const order = await
|
|
32
|
+
const order = await services.enrollments.generateOrderFromEnrollment(enrollment, configuration);
|
|
75
33
|
if (order) {
|
|
76
34
|
await modules.enrollments.addEnrollmentPeriod(enrollment._id, {
|
|
77
35
|
...period,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enrollment-order-generator.js","sourceRoot":"","sources":["../../src/worker/enrollment-order-generator.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"enrollment-order-generator.js","sourceRoot":"","sources":["../../src/worker/enrollment-order-generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,7 +9,7 @@ export const ErrorNotifications = {
|
|
|
9
9
|
version: '1.0',
|
|
10
10
|
type: 'ERROR_NOTIFICATIONS',
|
|
11
11
|
doWork: async (args, context, workId) => {
|
|
12
|
-
const work = await context.modules.worker.findWork({ workId });
|
|
12
|
+
const work = (await context.modules.worker.findWork({ workId }));
|
|
13
13
|
const secondsPassed = args?.secondsPassed || 60;
|
|
14
14
|
const to = new Date();
|
|
15
15
|
const from = new Date(new Date(work.scheduled).getTime() - secondsPassed * 1000);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error-notifications.js","sourceRoot":"","sources":["../../src/worker/error-notifications.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"error-notifications.js","sourceRoot":"","sources":["../../src/worker/error-notifications.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAkB,cAAc,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpF,OAAO,KAAK,MAAM,eAAe,CAAC;AAUlC,MAAM,wBAAwB,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;AAE/D,MAAM,CAAC,MAAM,kBAAkB,GAAgC;IAC7D,GAAG,aAAa;IAEhB,GAAG,EAAE,2CAA2C;IAChD,KAAK,EAAE,wEAAwE;IAC/E,OAAO,EAAE,KAAK;IAEd,IAAI,EAAE,qBAAqB;IAE3B,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;QACtC,MAAM,IAAI,GAAG,CAAC,MAAM,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC,CAAS,CAAC;QACzE,MAAM,aAAa,GAAG,IAAI,EAAE,aAAa,IAAI,EAAE,CAAC;QAChD,MAAM,EAAE,GAAG,IAAI,IAAI,EAAE,CAAC;QACtB,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,GAAG,aAAa,GAAG,IAAI,CAAC,CAAC;QAEjF,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,CAChB,MAAM,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC;gBACzC,SAAS,EAAE;oBACT,GAAG,EAAE,EAAE;oBACP,KAAK,EAAE,IAAI;iBACZ;gBACD,KAAK,EAAE,SAAS;gBAChB,MAAM,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC;aAC5B,CAAC,CACH,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,kBAAkB,CAAC,IAAI,IAAI,QAAQ,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC;YAE5F,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;gBACtB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;YACvC,CAAC;YAED,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC;gBACnD,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,CAAC;gBACV,KAAK,EAAE;oBACL,SAAS;oBACT,QAAQ,EAAE,cAAc;iBACzB;gBACD,cAAc,EAAE,MAAM;aACvB,CAAC,CAAC;YAEH,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,MAAM,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,GAAG,EAAE;aAChC,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE;oBACL,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,OAAO,EAAE,GAAG,CAAC,OAAO;oBACpB,KAAK,EAAE,GAAG,CAAC,KAAK;iBACjB;aACF,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAC;AAEF,cAAc,CAAC,eAAe,CAAC,kBAAkB,CAAC,CAAC;AAEnD,eAAe,kBAAkB,CAAC;AAElC,MAAM,kBAAkB,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;AACxC,cAAc,CAAC,uBAAuB,CAAC;IACrC,IAAI,EAAE,kBAAkB,CAAC,IAAI;IAC7B,QAAQ,EAAE,wBAAwB;IAClC,KAAK,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,aAAa,EAAE,kBAAkB,EAAE,CAAC;IAC1D,OAAO,EAAE,CAAC;CACX,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"export-token.d.ts","sourceRoot":"","sources":["../../src/worker/export-token.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,aAAa,EAAiC,MAAM,qBAAqB,CAAC;AAGnG,eAAO,MAAM,iBAAiB,EAAE,cAAc,CAAC,IAAI,EAAE,IAAI,CAYxD,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAAI,cAAc,aAAa,
|
|
1
|
+
{"version":3,"file":"export-token.d.ts","sourceRoot":"","sources":["../../src/worker/export-token.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,aAAa,EAAiC,MAAM,qBAAqB,CAAC;AAGnG,eAAO,MAAM,iBAAiB,EAAE,cAAc,CAAC,IAAI,EAAE,IAAI,CAYxD,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAAI,cAAc,aAAa,SAS/D,CAAC;AAEF,eAAe,oBAAoB,CAAC"}
|