@unchainedshop/plugins 3.0.0-alpha7 → 3.0.0-rc2
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/delivery/pick-mup.js +1 -2
- package/lib/delivery/pick-mup.js.map +1 -1
- package/lib/delivery/post.js +2 -1
- package/lib/delivery/post.js.map +1 -1
- package/lib/delivery/send-message.js +2 -1
- package/lib/delivery/send-message.js.map +1 -1
- package/lib/delivery/stores.js +2 -1
- package/lib/delivery/stores.js.map +1 -1
- package/lib/enrollments/licensed.d.ts.map +1 -1
- package/lib/enrollments/licensed.js +1 -1
- package/lib/enrollments/licensed.js.map +1 -1
- package/lib/events/aws-eventbridge.d.ts +2 -0
- package/lib/events/aws-eventbridge.d.ts.map +1 -0
- package/lib/events/aws-eventbridge.js +36 -0
- package/lib/events/aws-eventbridge.js.map +1 -0
- package/lib/events/node-event-emitter.js +1 -2
- package/lib/events/node-event-emitter.js.map +1 -1
- package/lib/events/redis.js +4 -2
- package/lib/events/redis.js.map +1 -1
- package/lib/files/gridfs/gridfs-adapter.d.ts.map +1 -1
- package/lib/files/gridfs/gridfs-adapter.js +14 -5
- package/lib/files/gridfs/gridfs-adapter.js.map +1 -1
- package/lib/files/gridfs/gridfs-webhook.d.ts +1 -1
- package/lib/files/gridfs/gridfs-webhook.d.ts.map +1 -1
- package/lib/files/gridfs/gridfs-webhook.js +25 -6
- package/lib/files/gridfs/gridfs-webhook.js.map +1 -1
- package/lib/files/gridfs/sign.d.ts +1 -1
- package/lib/files/gridfs/sign.d.ts.map +1 -1
- package/lib/files/gridfs/sign.js +8 -7
- package/lib/files/gridfs/sign.js.map +1 -1
- package/lib/files/minio/minio-adapter.d.ts.map +1 -1
- package/lib/files/minio/minio-adapter.js +13 -9
- package/lib/files/minio/minio-adapter.js.map +1 -1
- package/lib/files/minio/minio-webhook.d.ts.map +1 -1
- package/lib/files/minio/minio-webhook.js +4 -3
- package/lib/files/minio/minio-webhook.js.map +1 -1
- package/lib/filters/local-search.d.ts +1 -1
- package/lib/filters/local-search.d.ts.map +1 -1
- package/lib/filters/local-search.js +1 -1
- package/lib/filters/local-search.js.map +1 -1
- package/lib/filters/strict-equal.js +1 -1
- package/lib/filters/strict-equal.js.map +1 -1
- package/lib/payment/apple-iap/adapter.d.ts.map +1 -1
- package/lib/payment/apple-iap/adapter.js +15 -20
- 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/module/configureAppleTransactionsModule.d.ts +1 -1
- package/lib/payment/apple-iap/module/configureAppleTransactionsModule.d.ts.map +1 -1
- package/lib/payment/braintree.js +10 -8
- 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/middleware.d.ts.map +1 -1
- package/lib/payment/cryptopay/middleware.js +4 -4
- package/lib/payment/cryptopay/middleware.js.map +1 -1
- package/lib/payment/cryptopay/plugin.d.ts +1 -1
- package/lib/payment/cryptopay/plugin.d.ts.map +1 -1
- package/lib/payment/cryptopay/plugin.js +8 -9
- package/lib/payment/cryptopay/plugin.js.map +1 -1
- package/lib/payment/datatrans-v2/api/authorize.d.ts +1 -1
- package/lib/payment/datatrans-v2/api/authorize.d.ts.map +1 -1
- package/lib/payment/datatrans-v2/api/authorizeAuthenticated.d.ts +1 -1
- package/lib/payment/datatrans-v2/api/authorizeAuthenticated.d.ts.map +1 -1
- package/lib/payment/datatrans-v2/api/cancel.d.ts +1 -1
- package/lib/payment/datatrans-v2/api/cancel.d.ts.map +1 -1
- package/lib/payment/datatrans-v2/api/init.d.ts +1 -1
- package/lib/payment/datatrans-v2/api/init.d.ts.map +1 -1
- package/lib/payment/datatrans-v2/api/makeFetcher.d.ts.map +1 -1
- package/lib/payment/datatrans-v2/api/makeFetcher.js +0 -1
- package/lib/payment/datatrans-v2/api/makeFetcher.js.map +1 -1
- package/lib/payment/datatrans-v2/api/secureFields.d.ts +1 -1
- package/lib/payment/datatrans-v2/api/secureFields.d.ts.map +1 -1
- package/lib/payment/datatrans-v2/api/settle.d.ts +1 -1
- package/lib/payment/datatrans-v2/api/settle.d.ts.map +1 -1
- package/lib/payment/datatrans-v2/api/status.d.ts +1 -1
- package/lib/payment/datatrans-v2/api/status.d.ts.map +1 -1
- package/lib/payment/datatrans-v2/api/types.d.ts +260 -0
- package/lib/payment/datatrans-v2/api/types.d.ts.map +1 -0
- package/lib/payment/datatrans-v2/api/types.js +2 -0
- package/lib/payment/datatrans-v2/api/types.js.map +1 -0
- package/lib/payment/datatrans-v2/api/validate.d.ts +1 -1
- package/lib/payment/datatrans-v2/api/validate.d.ts.map +1 -1
- package/lib/payment/datatrans-v2/generateSignature copy.d.ts +11 -0
- package/lib/payment/datatrans-v2/generateSignature copy.d.ts.map +1 -0
- package/lib/payment/datatrans-v2/generateSignature copy.js +19 -0
- package/lib/payment/datatrans-v2/generateSignature copy.js.map +1 -0
- package/lib/payment/datatrans-v2/generateSignature.d.ts +1 -1
- package/lib/payment/datatrans-v2/generateSignature.d.ts.map +1 -1
- package/lib/payment/datatrans-v2/generateSignature.js +7 -4
- package/lib/payment/datatrans-v2/generateSignature.js.map +1 -1
- package/lib/payment/datatrans-v2/index.d.ts.map +1 -1
- package/lib/payment/datatrans-v2/index.js +31 -29
- package/lib/payment/datatrans-v2/index.js.map +1 -1
- package/lib/payment/datatrans-v2/middleware.d.ts.map +1 -1
- package/lib/payment/datatrans-v2/middleware.js +7 -5
- package/lib/payment/datatrans-v2/middleware.js.map +1 -1
- package/lib/payment/datatrans-v2/parseRegistrationData.d.ts +4 -4
- package/lib/payment/datatrans-v2/parseRegistrationData.d.ts.map +1 -1
- package/lib/payment/datatrans-v2/parseRegistrationData.js +5 -3
- package/lib/payment/datatrans-v2/parseRegistrationData.js.map +1 -1
- package/lib/payment/datatrans-v2/roundedAmountFromOrder.d.ts +1 -2
- package/lib/payment/datatrans-v2/roundedAmountFromOrder.d.ts.map +1 -1
- package/lib/payment/datatrans-v2/roundedAmountFromOrder.js +6 -2
- package/lib/payment/datatrans-v2/roundedAmountFromOrder.js.map +1 -1
- package/lib/payment/datatrans-v2/splitProperties.d.ts +0 -1
- package/lib/payment/datatrans-v2/splitProperties.d.ts.map +1 -1
- package/lib/payment/datatrans-v2/splitProperties.js +0 -3
- package/lib/payment/datatrans-v2/splitProperties.js.map +1 -1
- package/lib/payment/invoice-prepaid.js +4 -3
- package/lib/payment/invoice-prepaid.js.map +1 -1
- package/lib/payment/invoice.js +4 -3
- package/lib/payment/invoice.js.map +1 -1
- package/lib/payment/paypal-checkout.js +10 -6
- package/lib/payment/paypal-checkout.js.map +1 -1
- package/lib/payment/payrexx/api/makeFetcher.d.ts.map +1 -1
- package/lib/payment/payrexx/api/makeFetcher.js +2 -3
- package/lib/payment/payrexx/api/makeFetcher.js.map +1 -1
- package/lib/payment/payrexx/index.d.ts.map +1 -1
- package/lib/payment/payrexx/index.js +20 -14
- package/lib/payment/payrexx/index.js.map +1 -1
- package/lib/payment/payrexx/middleware.d.ts.map +1 -1
- package/lib/payment/payrexx/middleware.js +12 -9
- package/lib/payment/payrexx/middleware.js.map +1 -1
- package/lib/payment/postfinance-checkout/index.d.ts.map +1 -1
- package/lib/payment/postfinance-checkout/index.js +18 -13
- package/lib/payment/postfinance-checkout/index.js.map +1 -1
- package/lib/payment/postfinance-checkout/middleware.d.ts.map +1 -1
- package/lib/payment/postfinance-checkout/middleware.js +4 -3
- package/lib/payment/postfinance-checkout/middleware.js.map +1 -1
- package/lib/payment/postfinance-checkout/utils.d.ts +2 -2
- package/lib/payment/postfinance-checkout/utils.d.ts.map +1 -1
- package/lib/payment/postfinance-checkout/utils.js +6 -2
- package/lib/payment/postfinance-checkout/utils.js.map +1 -1
- package/lib/payment/saferpay/adapter.d.ts +1 -1
- package/lib/payment/saferpay/adapter.d.ts.map +1 -1
- package/lib/payment/saferpay/adapter.js +17 -11
- package/lib/payment/saferpay/adapter.js.map +1 -1
- package/lib/payment/saferpay/api/api/SaferpayConnection.d.ts.map +1 -1
- package/lib/payment/saferpay/api/api/SaferpayConnection.js +0 -1
- package/lib/payment/saferpay/api/api/SaferpayConnection.js.map +1 -1
- package/lib/payment/saferpay/api/models/TransactionCapture.d.ts +1 -1
- package/lib/payment/saferpay/api/models/TransactionCapture.d.ts.map +1 -1
- package/lib/payment/saferpay/db/SaferpayTransactionsCollection.d.ts +1 -1
- package/lib/payment/saferpay/db/SaferpayTransactionsCollection.d.ts.map +1 -1
- package/lib/payment/saferpay/middleware.d.ts.map +1 -1
- package/lib/payment/saferpay/middleware.js +4 -4
- package/lib/payment/saferpay/middleware.js.map +1 -1
- package/lib/payment/stripe/index.d.ts.map +1 -1
- package/lib/payment/stripe/index.js +17 -11
- package/lib/payment/stripe/index.js.map +1 -1
- package/lib/payment/stripe/middleware.d.ts.map +1 -1
- package/lib/payment/stripe/middleware.js +10 -10
- package/lib/payment/stripe/middleware.js.map +1 -1
- package/lib/payment/stripe/stripe.d.ts +3 -4
- package/lib/payment/stripe/stripe.d.ts.map +1 -1
- package/lib/payment/stripe/stripe.js +3 -1
- package/lib/payment/stripe/stripe.js.map +1 -1
- package/lib/pricing/delivery-swiss-tax.d.ts +1 -1
- package/lib/pricing/delivery-swiss-tax.d.ts.map +1 -1
- package/lib/pricing/delivery-swiss-tax.js +1 -2
- package/lib/pricing/delivery-swiss-tax.js.map +1 -1
- package/lib/pricing/discount-100-off.d.ts +2 -3
- package/lib/pricing/discount-100-off.d.ts.map +1 -1
- package/lib/pricing/discount-100-off.js +1 -1
- package/lib/pricing/discount-100-off.js.map +1 -1
- package/lib/pricing/discount-half-price-manual.d.ts +2 -3
- package/lib/pricing/discount-half-price-manual.d.ts.map +1 -1
- package/lib/pricing/discount-half-price-manual.js +1 -1
- package/lib/pricing/discount-half-price-manual.js.map +1 -1
- package/lib/pricing/discount-half-price.d.ts +2 -3
- package/lib/pricing/discount-half-price.d.ts.map +1 -1
- package/lib/pricing/discount-half-price.js +1 -1
- package/lib/pricing/discount-half-price.js.map +1 -1
- package/lib/pricing/free-delivery.d.ts +1 -1
- package/lib/pricing/free-delivery.d.ts.map +1 -1
- package/lib/pricing/free-delivery.js +1 -1
- package/lib/pricing/free-delivery.js.map +1 -1
- package/lib/pricing/free-payment.d.ts +1 -1
- package/lib/pricing/free-payment.d.ts.map +1 -1
- package/lib/pricing/free-payment.js +1 -1
- package/lib/pricing/free-payment.js.map +1 -1
- package/lib/pricing/order-delivery.d.ts +1 -1
- package/lib/pricing/order-delivery.d.ts.map +1 -1
- package/lib/pricing/order-delivery.js +6 -3
- package/lib/pricing/order-delivery.js.map +1 -1
- package/lib/pricing/order-discount.d.ts +1 -2
- package/lib/pricing/order-discount.d.ts.map +1 -1
- package/lib/pricing/order-discount.js +15 -8
- package/lib/pricing/order-discount.js.map +1 -1
- package/lib/pricing/order-items-discount.js +7 -4
- package/lib/pricing/order-items-discount.js.map +1 -1
- package/lib/pricing/order-items.js +7 -3
- package/lib/pricing/order-items.js.map +1 -1
- package/lib/pricing/order-payment.js +6 -3
- package/lib/pricing/order-payment.js.map +1 -1
- package/lib/pricing/order-round.d.ts +1 -1
- package/lib/pricing/order-round.d.ts.map +1 -1
- package/lib/pricing/order-round.js +1 -2
- package/lib/pricing/order-round.js.map +1 -1
- package/lib/pricing/product-catalog-price.d.ts +2 -2
- package/lib/pricing/product-catalog-price.d.ts.map +1 -1
- package/lib/pricing/product-catalog-price.js +7 -6
- package/lib/pricing/product-catalog-price.js.map +1 -1
- package/lib/pricing/product-discount.js +1 -2
- package/lib/pricing/product-discount.js.map +1 -1
- package/lib/pricing/product-price-rateconversion.d.ts +1 -1
- package/lib/pricing/product-price-rateconversion.d.ts.map +1 -1
- package/lib/pricing/product-price-rateconversion.js +1 -1
- package/lib/pricing/product-price-rateconversion.js.map +1 -1
- package/lib/pricing/product-round.d.ts +1 -1
- package/lib/pricing/product-round.d.ts.map +1 -1
- package/lib/pricing/product-round.js +1 -1
- package/lib/pricing/product-round.js.map +1 -1
- package/lib/pricing/product-swiss-tax.d.ts +4 -3
- package/lib/pricing/product-swiss-tax.d.ts.map +1 -1
- package/lib/pricing/product-swiss-tax.js +1 -2
- package/lib/pricing/product-swiss-tax.js.map +1 -1
- package/lib/quotations/manual.js +1 -1
- package/lib/quotations/manual.js.map +1 -1
- package/lib/warehousing/eth-minter.js +7 -4
- package/lib/warehousing/eth-minter.js.map +1 -1
- package/lib/warehousing/store.js +2 -1
- package/lib/warehousing/store.js.map +1 -1
- package/lib/worker/BaseWorker.d.ts +30 -0
- package/lib/worker/BaseWorker.d.ts.map +1 -0
- package/lib/worker/BaseWorker.js +81 -0
- package/lib/worker/BaseWorker.js.map +1 -0
- package/lib/worker/EventListenerWorker.d.ts +6 -0
- package/lib/worker/EventListenerWorker.d.ts.map +1 -0
- package/lib/worker/EventListenerWorker.js +46 -0
- package/lib/worker/EventListenerWorker.js.map +1 -0
- package/lib/worker/FailedRescheduler.d.ts +15 -0
- package/lib/worker/FailedRescheduler.d.ts.map +1 -0
- package/lib/worker/FailedRescheduler.js +45 -0
- package/lib/worker/FailedRescheduler.js.map +1 -0
- package/lib/worker/IntervalWorker.d.ts +10 -0
- package/lib/worker/IntervalWorker.d.ts.map +1 -0
- package/lib/worker/IntervalWorker.js +37 -0
- package/lib/worker/IntervalWorker.js.map +1 -0
- 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 +7 -8
- package/lib/worker/bulk-import.js.map +1 -1
- package/lib/worker/email.d.ts.map +1 -1
- package/lib/worker/email.js +1 -5
- 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 +17 -15
- package/lib/worker/enrollment-order-generator.js.map +1 -1
- package/lib/worker/error-notifications.d.ts +1 -1
- package/lib/worker/error-notifications.d.ts.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 +1 -2
- package/lib/worker/export-token.d.ts.map +1 -1
- package/lib/worker/export-token.js +2 -1
- package/lib/worker/export-token.js.map +1 -1
- package/lib/worker/external.d.ts +1 -1
- package/lib/worker/external.d.ts.map +1 -1
- package/lib/worker/external.js +1 -1
- package/lib/worker/external.js.map +1 -1
- package/lib/worker/heartbeat.js +1 -1
- package/lib/worker/heartbeat.js.map +1 -1
- package/lib/worker/http-request.d.ts +1 -1
- package/lib/worker/http-request.d.ts.map +1 -1
- package/lib/worker/http-request.js +1 -5
- package/lib/worker/http-request.js.map +1 -1
- package/lib/worker/message.d.ts +2 -2
- package/lib/worker/message.d.ts.map +1 -1
- package/lib/worker/message.js +1 -5
- package/lib/worker/message.js.map +1 -1
- package/lib/worker/push-notification.js +1 -4
- package/lib/worker/push-notification.js.map +1 -1
- package/lib/worker/sms.js +1 -4
- package/lib/worker/sms.js.map +1 -1
- package/lib/worker/update-coinbase-rates.js +1 -1
- package/lib/worker/update-coinbase-rates.js.map +1 -1
- package/lib/worker/update-ecb-rates.js +1 -1
- package/lib/worker/update-ecb-rates.js.map +1 -1
- package/lib/worker/update-token-ownership.d.ts +1 -1
- package/lib/worker/update-token-ownership.d.ts.map +1 -1
- package/lib/worker/update-token-ownership.js +1 -1
- package/lib/worker/update-token-ownership.js.map +1 -1
- package/lib/worker/zombie-killer.d.ts +8 -2
- package/lib/worker/zombie-killer.d.ts.map +1 -1
- package/lib/worker/zombie-killer.js +12 -9
- package/lib/worker/zombie-killer.js.map +1 -1
- package/package.json +37 -82
- package/src/delivery/pick-mup.ts +2 -3
- package/src/delivery/post.ts +2 -2
- package/src/delivery/send-message.ts +2 -2
- package/src/delivery/stores.ts +2 -2
- package/src/enrollments/licensed.ts +1 -2
- package/src/events/aws-eventbridge.ts +43 -0
- package/src/events/node-event-emitter.ts +1 -2
- package/src/events/redis.ts +4 -2
- package/src/files/gridfs/gridfs-adapter.ts +15 -5
- package/src/files/gridfs/gridfs-webhook.ts +29 -9
- package/src/files/gridfs/sign.ts +20 -8
- package/src/files/minio/minio-adapter.ts +14 -11
- package/src/files/minio/minio-webhook.ts +5 -3
- package/src/filters/local-search.ts +1 -2
- package/src/filters/strict-equal.ts +1 -2
- package/src/payment/apple-iap/adapter.ts +22 -40
- package/src/payment/apple-iap/db/AppleTransactionsCollection.ts +1 -1
- package/src/payment/apple-iap/module/configureAppleTransactionsModule.ts +1 -1
- package/src/payment/braintree.ts +16 -9
- package/src/payment/cryptopay/db/CryptopayTransactions.ts +1 -1
- package/src/payment/cryptopay/middleware.ts +11 -8
- package/src/payment/cryptopay/plugin.ts +14 -11
- package/src/payment/datatrans-v2/api/authorize.ts +1 -1
- package/src/payment/datatrans-v2/api/authorizeAuthenticated.ts +1 -1
- package/src/payment/datatrans-v2/api/cancel.ts +1 -1
- package/src/payment/datatrans-v2/api/init.ts +1 -1
- package/src/payment/datatrans-v2/api/makeFetcher.ts +0 -1
- package/src/payment/datatrans-v2/api/secureFields.ts +1 -1
- package/src/payment/datatrans-v2/api/settle.ts +1 -1
- package/src/payment/datatrans-v2/api/status.ts +1 -1
- package/src/payment/datatrans-v2/api/validate.ts +1 -1
- package/src/payment/datatrans-v2/generateSignature.test.ts +15 -0
- package/src/payment/datatrans-v2/generateSignature.ts +18 -6
- package/src/payment/datatrans-v2/index.ts +41 -36
- package/src/payment/datatrans-v2/middleware.ts +8 -12
- package/src/payment/datatrans-v2/parseRegistrationData.ts +7 -5
- package/src/payment/datatrans-v2/roundedAmountFromOrder.ts +6 -6
- package/src/payment/datatrans-v2/splitProperties.ts +0 -5
- package/src/payment/invoice-prepaid.ts +4 -4
- package/src/payment/invoice.ts +4 -4
- package/src/payment/paypal-checkout.ts +16 -7
- package/src/payment/payrexx/api/makeFetcher.ts +2 -3
- package/src/payment/payrexx/index.ts +26 -15
- package/src/payment/payrexx/middleware.ts +14 -19
- package/src/payment/postfinance-checkout/index.ts +26 -17
- package/src/payment/postfinance-checkout/middleware.ts +6 -9
- package/src/payment/postfinance-checkout/utils.ts +6 -3
- package/src/payment/saferpay/adapter.ts +23 -13
- package/src/payment/saferpay/api/api/SaferpayConnection.ts +0 -1
- package/src/payment/saferpay/api/models/TransactionCapture.ts +1 -1
- package/src/payment/saferpay/db/SaferpayTransactionsCollection.ts +1 -1
- package/src/payment/saferpay/middleware.ts +6 -10
- package/src/payment/stripe/index.ts +23 -12
- package/src/payment/stripe/middleware.ts +15 -23
- package/src/payment/stripe/stripe.ts +6 -5
- package/src/pricing/delivery-swiss-tax.ts +6 -2
- package/src/pricing/discount-100-off.ts +4 -3
- package/src/pricing/discount-half-price-manual.ts +9 -5
- package/src/pricing/discount-half-price.ts +9 -5
- package/src/pricing/free-delivery.ts +1 -1
- package/src/pricing/free-payment.ts +1 -1
- package/src/pricing/order-delivery.ts +11 -8
- package/src/pricing/order-discount.ts +26 -11
- package/src/pricing/order-items-discount.ts +12 -5
- package/src/pricing/order-items.ts +12 -8
- package/src/pricing/order-payment.ts +11 -8
- package/src/pricing/order-round.ts +6 -2
- package/src/pricing/product-catalog-price.ts +12 -7
- package/src/pricing/product-discount.ts +5 -4
- package/src/pricing/product-price-rateconversion.ts +5 -2
- package/src/pricing/product-round.ts +5 -2
- package/src/pricing/product-swiss-tax.ts +5 -3
- package/src/quotations/manual.ts +1 -2
- package/src/warehousing/eth-minter.ts +11 -10
- package/src/warehousing/store.ts +2 -6
- package/src/worker/BaseWorker.ts +119 -0
- package/src/worker/EventListenerWorker.ts +61 -0
- package/src/worker/FailedRescheduler.ts +80 -0
- package/src/worker/IntervalWorker.ts +54 -0
- package/src/worker/bulk-import.ts +12 -13
- package/src/worker/email.ts +1 -8
- package/src/worker/enrollment-order-generator.ts +25 -34
- package/src/worker/error-notifications.ts +2 -2
- package/src/worker/export-token.ts +2 -8
- package/src/worker/external.ts +1 -2
- package/src/worker/heartbeat.ts +1 -2
- package/src/worker/http-request.ts +1 -8
- package/src/worker/message.ts +2 -6
- package/src/worker/push-notification.ts +1 -6
- package/src/worker/sms.ts +1 -7
- package/src/worker/update-coinbase-rates.ts +1 -3
- package/src/worker/update-ecb-rates.ts +1 -3
- package/src/worker/update-token-ownership.ts +1 -2
- package/src/worker/zombie-killer.ts +23 -23
- package/tsconfig.json +4 -5
- /package/src/payment/datatrans-v2/api/{types.d.ts → types.ts} +0 -0
|
@@ -4,13 +4,13 @@ const { DATATRANS_SIGN_KEY, DATATRANS_SIGN2_KEY, DATATRANS_SECURITY = Security.D
|
|
|
4
4
|
const logger = createLogger('unchained:core-payment:datatrans:webhook');
|
|
5
5
|
export const datatransHandler = async (req, res) => {
|
|
6
6
|
const resolvedContext = req.unchainedContext;
|
|
7
|
-
const { modules } = resolvedContext;
|
|
7
|
+
const { modules, services } = resolvedContext;
|
|
8
8
|
const signature = req.headers['datatrans-signature'];
|
|
9
9
|
if (req.method === 'POST' && signature) {
|
|
10
10
|
const [rawTimestamp, rawHash] = signature.split(',');
|
|
11
11
|
const [, hash] = rawHash.split('=');
|
|
12
12
|
const [, timestamp] = rawTimestamp.split('=');
|
|
13
|
-
const comparableSignature = generateSignature({
|
|
13
|
+
const comparableSignature = await generateSignature({
|
|
14
14
|
security: DATATRANS_SECURITY,
|
|
15
15
|
signKey: DATATRANS_SIGN2_KEY || DATATRANS_SIGN_KEY,
|
|
16
16
|
})(timestamp, req.body);
|
|
@@ -21,7 +21,7 @@ export const datatransHandler = async (req, res) => {
|
|
|
21
21
|
return;
|
|
22
22
|
}
|
|
23
23
|
const transaction = JSON.parse(req.body);
|
|
24
|
-
logger.
|
|
24
|
+
logger.info(`received request`, {
|
|
25
25
|
type: transaction.type,
|
|
26
26
|
});
|
|
27
27
|
if (transaction.status === 'authorized') {
|
|
@@ -30,7 +30,7 @@ export const datatransHandler = async (req, res) => {
|
|
|
30
30
|
try {
|
|
31
31
|
if (transaction.type === 'card_check') {
|
|
32
32
|
const paymentProviderId = referenceId;
|
|
33
|
-
const paymentCredentials = await
|
|
33
|
+
const paymentCredentials = await services.orders.registerPaymentCredentials(paymentProviderId, { userId, transactionContext: { transactionId: transaction.transactionId } });
|
|
34
34
|
logger.info(`registered payment credentials for ${userId}`, {
|
|
35
35
|
userId,
|
|
36
36
|
});
|
|
@@ -45,7 +45,9 @@ export const datatransHandler = async (req, res) => {
|
|
|
45
45
|
});
|
|
46
46
|
if (!orderPayment)
|
|
47
47
|
throw new Error(`Order Payment with id ${orderPaymentId} not found`);
|
|
48
|
-
const order = await
|
|
48
|
+
const order = await services.orders.checkoutOrder(orderPayment.orderId, {
|
|
49
|
+
paymentContext: { userId, transactionId: transaction.transactionId },
|
|
50
|
+
});
|
|
49
51
|
res.writeHead(200);
|
|
50
52
|
logger.info(`confirmed checkout for order ${order.orderNumber}`, {
|
|
51
53
|
orderId: order._id,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"middleware.js","sourceRoot":"","sources":["../../../src/payment/datatrans-v2/middleware.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAErD,OAAO,iBAAiB,EAAE,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"middleware.js","sourceRoot":"","sources":["../../../src/payment/datatrans-v2/middleware.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import
|
|
2
|
-
export default function parseRegistrationData(transaction: StatusResponseSuccess): {
|
|
1
|
+
import { StatusResponseSuccess } from './api/types.js';
|
|
2
|
+
export default function parseRegistrationData(transaction: StatusResponseSuccess): Promise<{
|
|
3
|
+
_id: string;
|
|
3
4
|
paymentMethod: import("./api/types.js").PaymentMethod;
|
|
4
5
|
currency: string;
|
|
5
6
|
language: import("./api/types.js").SupportedLanguage;
|
|
6
7
|
type: import("./api/types.js").TransactionType;
|
|
7
|
-
_id?: string;
|
|
8
8
|
token?: Record<string, unknown>;
|
|
9
9
|
info?: Record<string, unknown>;
|
|
10
10
|
objectKey?: string;
|
|
11
|
-
}
|
|
11
|
+
}>;
|
|
12
12
|
//# sourceMappingURL=parseRegistrationData.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parseRegistrationData.d.ts","sourceRoot":"","sources":["../../../src/payment/datatrans-v2/parseRegistrationData.ts"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"parseRegistrationData.d.ts","sourceRoot":"","sources":["../../../src/payment/datatrans-v2/parseRegistrationData.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAGvD,wBAA8B,qBAAqB,CAAC,WAAW,EAAE,qBAAqB;;;;;;YAY1E,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;WACxB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;gBAClB,MAAM;GAerB"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import splitProperties from './splitProperties.js';
|
|
2
|
-
|
|
2
|
+
import { sha256 } from '@unchainedshop/utils';
|
|
3
|
+
export default async function parseRegistrationData(transaction) {
|
|
3
4
|
const parsed = Object.entries(transaction).reduce((acc, [objectKey, payload]) => {
|
|
4
|
-
const { token, info
|
|
5
|
+
const { token, info } = splitProperties({ objectKey, payload });
|
|
5
6
|
if (token) {
|
|
6
7
|
return {
|
|
7
|
-
_id,
|
|
8
8
|
token,
|
|
9
9
|
info,
|
|
10
10
|
objectKey,
|
|
@@ -13,8 +13,10 @@ export default function parseRegistrationData(transaction) {
|
|
|
13
13
|
return acc;
|
|
14
14
|
}, {});
|
|
15
15
|
if (parsed.objectKey) {
|
|
16
|
+
const _id = await sha256(parsed.token);
|
|
16
17
|
return {
|
|
17
18
|
...parsed,
|
|
19
|
+
_id,
|
|
18
20
|
paymentMethod: transaction.paymentMethod,
|
|
19
21
|
currency: transaction.currency,
|
|
20
22
|
language: transaction.language,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parseRegistrationData.js","sourceRoot":"","sources":["../../../src/payment/datatrans-v2/parseRegistrationData.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"parseRegistrationData.js","sourceRoot":"","sources":["../../../src/payment/datatrans-v2/parseRegistrationData.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,MAAM,sBAAsB,CAAC;AAEnD,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAE9C,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,qBAAqB,CAAC,WAAkC;IACpF,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,EAAE;QAC9E,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,eAAe,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC;QAChE,IAAI,KAAK,EAAE,CAAC;YACV,OAAO;gBACL,KAAK;gBACL,IAAI;gBACJ,SAAS;aACV,CAAC;QACJ,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAE,CAIJ,CAAC;IACF,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;QACrB,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAEvC,OAAO;YACL,GAAG,MAAM;YACT,GAAG;YACH,aAAa,EAAE,WAAW,CAAC,aAAa;YACxC,QAAQ,EAAE,WAAW,CAAC,QAAQ;YAC9B,QAAQ,EAAE,WAAW,CAAC,QAAQ;YAC9B,IAAI,EAAE,WAAW,CAAC,IAAI;SACvB,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import { UnchainedCore } from '@unchainedshop/core';
|
|
2
1
|
import { Order } from '@unchainedshop/core-orders';
|
|
3
|
-
declare const roundedAmountFromOrder: (order: Order
|
|
2
|
+
declare const roundedAmountFromOrder: (order: Order) => {
|
|
4
3
|
currency: string;
|
|
5
4
|
amount: number;
|
|
6
5
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"roundedAmountFromOrder.d.ts","sourceRoot":"","sources":["../../../src/payment/datatrans-v2/roundedAmountFromOrder.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"roundedAmountFromOrder.d.ts","sourceRoot":"","sources":["../../../src/payment/datatrans-v2/roundedAmountFromOrder.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AAEnD,QAAA,MAAM,sBAAsB,UAAW,KAAK,KAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAUhF,CAAC;AAEF,eAAe,sBAAsB,CAAC"}
|
|
@@ -1,5 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
import { OrderPricingSheet } from '@unchainedshop/core';
|
|
2
|
+
const roundedAmountFromOrder = (order) => {
|
|
3
|
+
const pricing = OrderPricingSheet({
|
|
4
|
+
calculation: order.calculation,
|
|
5
|
+
currency: order.currency,
|
|
6
|
+
});
|
|
3
7
|
const { currency, amount } = pricing.total({ useNetPrice: false });
|
|
4
8
|
return {
|
|
5
9
|
currency,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"roundedAmountFromOrder.js","sourceRoot":"","sources":["../../../src/payment/datatrans-v2/roundedAmountFromOrder.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"roundedAmountFromOrder.js","sourceRoot":"","sources":["../../../src/payment/datatrans-v2/roundedAmountFromOrder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAGxD,MAAM,sBAAsB,GAAG,CAAC,KAAY,EAAwC,EAAE;IACpF,MAAM,OAAO,GAAG,iBAAiB,CAAC;QAChC,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,QAAQ,EAAE,KAAK,CAAC,QAAQ;KACzB,CAAC,CAAC;IACH,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;IACnE,OAAO;QACL,QAAQ;QACR,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;KAC3B,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,sBAAsB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"splitProperties.d.ts","sourceRoot":"","sources":["../../../src/payment/datatrans-v2/splitProperties.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"splitProperties.d.ts","sourceRoot":"","sources":["../../../src/payment/datatrans-v2/splitProperties.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,GAAG,CAAA;CAAE,GAAG;IACrG,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,GAAG,CAAC;CACX,CAoDA"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
// This method splits the return data of alias registration to the important properties needed for validation and the additional data
|
|
2
|
-
import crypto from 'crypto';
|
|
3
2
|
export default function splitProperties({ objectKey, payload }) {
|
|
4
3
|
if (!payload || !objectKey)
|
|
5
4
|
return { info: {} };
|
|
@@ -17,11 +16,9 @@ export default function splitProperties({ objectKey, payload }) {
|
|
|
17
16
|
expiryYear,
|
|
18
17
|
'3D': is3DActive ? payload['3D'] : undefined,
|
|
19
18
|
});
|
|
20
|
-
const _id = crypto.createHash('sha256').update(token).digest('hex');
|
|
21
19
|
return {
|
|
22
20
|
token,
|
|
23
21
|
info,
|
|
24
|
-
_id,
|
|
25
22
|
};
|
|
26
23
|
}
|
|
27
24
|
if (objectKey === 'PAY') {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"splitProperties.js","sourceRoot":"","sources":["../../../src/payment/datatrans-v2/splitProperties.ts"],"names":[],"mappings":"AAAA,qIAAqI;
|
|
1
|
+
{"version":3,"file":"splitProperties.js","sourceRoot":"","sources":["../../../src/payment/datatrans-v2/splitProperties.ts"],"names":[],"mappings":"AAAA,qIAAqI;AAErI,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,EAAE,SAAS,EAAE,OAAO,EAAwC;IAIlG,IAAI,CAAC,OAAO,IAAI,CAAC,SAAS;QAAE,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;IAEhD,IAAI,SAAS,KAAK,MAAM,EAAE,CAAC;QACzB,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;QAC5D,IAAI,CAAC,KAAK;YAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC5B,MAAM,UAAU,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC;QACxC,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC;QACpB,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC;YAC3B,KAAK;YACL,WAAW;YACX,UAAU;YACV,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;SAC7C,CAAC,CAAC;QACH,OAAO;YACL,KAAK;YACL,IAAI;SACL,CAAC;IACJ,CAAC;IAED,IAAI,SAAS,KAAK,KAAK,EAAE,CAAC;QACxB,MAAM,EAAE,SAAS,EAAE,eAAe,EAAE,aAAa,EAAE,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;QACvE,IAAI,CAAC,aAAa;YAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QACpC,OAAO;YACL,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC;gBACpB,SAAS;gBACT,eAAe;gBACf,aAAa;aACd,CAAC;YACF,IAAI;SACL,CAAC;IACJ,CAAC;IAED,IAAI,SAAS,KAAK,KAAK,EAAE,CAAC;QACxB,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;QAC9D,IAAI,CAAC,IAAI;YAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC3B,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC;QAClB,OAAO;YACL,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC;gBACpB,IAAI;gBACJ,MAAM;gBACN,SAAS;gBACT,OAAO;aACR,CAAC;YACF,IAAI;SACL,CAAC;IACJ,CAAC;IAED,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;IACnC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC;AACxE,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { PaymentAdapter, PaymentDirector } from '@unchainedshop/core';
|
|
2
|
+
import { PaymentProviderType } from '@unchainedshop/core-payment';
|
|
2
3
|
const InvoicePrepaid = {
|
|
3
4
|
...PaymentAdapter,
|
|
4
5
|
key: 'shop.unchained.invoice-prepaid',
|
|
@@ -8,9 +9,9 @@ const InvoicePrepaid = {
|
|
|
8
9
|
typeSupported: (type) => {
|
|
9
10
|
return type === PaymentProviderType.INVOICE;
|
|
10
11
|
},
|
|
11
|
-
actions: (
|
|
12
|
+
actions: (config, context) => {
|
|
12
13
|
return {
|
|
13
|
-
...PaymentAdapter.actions(
|
|
14
|
+
...PaymentAdapter.actions(config, context),
|
|
14
15
|
configurationError: () => {
|
|
15
16
|
return null;
|
|
16
17
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"invoice-prepaid.js","sourceRoot":"","sources":["../../src/payment/invoice-prepaid.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"invoice-prepaid.js","sourceRoot":"","sources":["../../src/payment/invoice-prepaid.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,cAAc,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACvF,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAElE,MAAM,cAAc,GAAoB;IACtC,GAAG,cAAc;IAEjB,GAAG,EAAE,gCAAgC;IACrC,KAAK,EAAE,kBAAkB;IACzB,OAAO,EAAE,OAAO;IAEhB,oBAAoB,EAAE,EAAE;IAExB,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE;QACtB,OAAO,IAAI,KAAK,mBAAmB,CAAC,OAAO,CAAC;IAC9C,CAAC;IAED,OAAO,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE;QAC3B,OAAO;YACL,GAAG,cAAc,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC;YAE1C,kBAAkB,EAAE,GAAG,EAAE;gBACvB,OAAO,IAAI,CAAC;YACd,CAAC;YAED,QAAQ,EAAE,GAAG,EAAE;gBACb,OAAO,IAAI,CAAC;YACd,CAAC;YAED,iBAAiB,EAAE,GAAG,EAAE;gBACtB,OAAO,KAAK,CAAC;YACf,CAAC;YAED,MAAM,EAAE,KAAK,IAAI,EAAE;gBACjB,OAAO,KAAK,CAAC;YACf,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC;AAEF,eAAe,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC"}
|
package/lib/payment/invoice.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { PaymentAdapter, PaymentDirector } from '@unchainedshop/core';
|
|
2
|
+
import { PaymentProviderType } from '@unchainedshop/core-payment';
|
|
2
3
|
const Invoice = {
|
|
3
4
|
...PaymentAdapter,
|
|
4
5
|
key: 'shop.unchained.invoice',
|
|
@@ -8,9 +9,9 @@ const Invoice = {
|
|
|
8
9
|
typeSupported: (type) => {
|
|
9
10
|
return type === PaymentProviderType.INVOICE;
|
|
10
11
|
},
|
|
11
|
-
actions: (
|
|
12
|
+
actions: (config, context) => {
|
|
12
13
|
return {
|
|
13
|
-
...PaymentAdapter.actions(
|
|
14
|
+
...PaymentAdapter.actions(config, context),
|
|
14
15
|
configurationError: () => {
|
|
15
16
|
return null;
|
|
16
17
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"invoice.js","sourceRoot":"","sources":["../../src/payment/invoice.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"invoice.js","sourceRoot":"","sources":["../../src/payment/invoice.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,cAAc,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACvF,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAElE,MAAM,OAAO,GAAoB;IAC/B,GAAG,cAAc;IAEjB,GAAG,EAAE,wBAAwB;IAC7B,KAAK,EAAE,SAAS;IAChB,OAAO,EAAE,OAAO;IAEhB,oBAAoB,EAAE,EAAE;IAExB,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE;QACtB,OAAO,IAAI,KAAK,mBAAmB,CAAC,OAAO,CAAC;IAC9C,CAAC;IAED,OAAO,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE;QAC3B,OAAO;YACL,GAAG,cAAc,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC;YAE1C,kBAAkB,EAAE,GAAG,EAAE;gBACvB,OAAO,IAAI,CAAC;YACd,CAAC;YAED,QAAQ,EAAE,GAAG,EAAE;gBACb,OAAO,IAAI,CAAC;YACd,CAAC;YAED,iBAAiB,EAAE,GAAG,EAAE;gBACtB,OAAO,IAAI,CAAC;YACd,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC;AAEF,eAAe,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC"}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { OrderPricingSheet, PaymentAdapter, PaymentDirector, PaymentError, } from '@unchainedshop/core';
|
|
2
2
|
import { createLogger } from '@unchainedshop/logger';
|
|
3
3
|
let checkoutNodeJssdk;
|
|
4
4
|
try {
|
|
5
|
+
// eslint-disable-next-line
|
|
6
|
+
// @ts-ignore
|
|
5
7
|
checkoutNodeJssdk = await import('@paypal/checkout-server-sdk');
|
|
6
8
|
}
|
|
7
9
|
catch {
|
|
@@ -31,9 +33,9 @@ const PaypalCheckout = {
|
|
|
31
33
|
typeSupported: (type) => {
|
|
32
34
|
return type === 'GENERIC';
|
|
33
35
|
},
|
|
34
|
-
actions: (
|
|
36
|
+
actions: (config, context) => {
|
|
35
37
|
const adapter = {
|
|
36
|
-
...PaymentAdapter.actions(
|
|
38
|
+
...PaymentAdapter.actions(config, context),
|
|
37
39
|
configurationError: () => {
|
|
38
40
|
const publicCredentialsValid = PAYPAL_CLIENT_ID && PAYPAL_SECRET;
|
|
39
41
|
if (!publicCredentialsValid) {
|
|
@@ -53,8 +55,7 @@ const PaypalCheckout = {
|
|
|
53
55
|
return PAYPAL_CLIENT_ID;
|
|
54
56
|
},
|
|
55
57
|
charge: async ({ orderID }) => {
|
|
56
|
-
const {
|
|
57
|
-
const { order } = params.paymentContext;
|
|
58
|
+
const { order } = context;
|
|
58
59
|
if (!orderID) {
|
|
59
60
|
logger.warn('Paypal Native Plugin: PRICE MATCH');
|
|
60
61
|
throw new Error('You have to provide orderID in paymentContext');
|
|
@@ -63,7 +64,10 @@ const PaypalCheckout = {
|
|
|
63
64
|
const request = new checkoutNodeJssdk.orders.OrdersGetRequest(orderID);
|
|
64
65
|
const client = new checkoutNodeJssdk.core.PayPalHttpClient(environment());
|
|
65
66
|
const paypalOrder = await client.execute(request);
|
|
66
|
-
const pricing =
|
|
67
|
+
const pricing = OrderPricingSheet({
|
|
68
|
+
calculation: order.calculation,
|
|
69
|
+
currency: order.currency,
|
|
70
|
+
});
|
|
67
71
|
const ourTotal = (pricing.total({ useNetPrice: false }).amount / 100).toFixed(2);
|
|
68
72
|
const paypalTotal = paypalOrder.result.purchase_units[0].amount.value;
|
|
69
73
|
if (ourTotal === paypalTotal) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"paypal-checkout.js","sourceRoot":"","sources":["../../src/payment/paypal-checkout.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"paypal-checkout.js","sourceRoot":"","sources":["../../src/payment/paypal-checkout.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"makeFetcher.d.ts","sourceRoot":"","sources":["../../../../src/payment/payrexx/api/makeFetcher.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"makeFetcher.d.ts","sourceRoot":"","sources":["../../../../src/payment/payrexx/api/makeFetcher.ts"],"names":[],"mappings":"mCAYW,MAAM,aACL,MAAM,WACR,MAAM,KACb,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,GAAG,QAAQ,GAAG,KAAK,GAAG,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;AAJ/F,wBA0EE"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
/// <reference lib="dom" />
|
|
2
1
|
import fs from 'fs';
|
|
3
2
|
import util from 'util';
|
|
4
3
|
import { resolve } from 'path';
|
|
@@ -35,7 +34,7 @@ export default (baseUrl = 'https://api.payrexx.com/v1.0/', instance = null, secr
|
|
|
35
34
|
};
|
|
36
35
|
}
|
|
37
36
|
const buildSignature = async (query = '') => {
|
|
38
|
-
const key = await crypto.subtle.importKey('raw', new TextEncoder().encode(secret), { name: 'HMAC', hash: 'SHA-256' }, false, ['sign'
|
|
37
|
+
const key = await crypto.subtle.importKey('raw', new TextEncoder().encode(secret), { name: 'HMAC', hash: 'SHA-256' }, false, ['sign']);
|
|
39
38
|
const signature = await crypto.subtle.sign('HMAC', key, new TextEncoder().encode(query));
|
|
40
39
|
return btoa(String.fromCharCode(...new Uint8Array(signature)));
|
|
41
40
|
};
|
|
@@ -45,7 +44,7 @@ export default (baseUrl = 'https://api.payrexx.com/v1.0/', instance = null, secr
|
|
|
45
44
|
return url.href;
|
|
46
45
|
};
|
|
47
46
|
return async (path, method, data) => {
|
|
48
|
-
logger.
|
|
47
|
+
logger.info(`${method} ${path}`);
|
|
49
48
|
if (method === 'POST') {
|
|
50
49
|
const queryParams = { ...data };
|
|
51
50
|
const signature = await buildSignature(new URLSearchParams(queryParams).toString());
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"makeFetcher.js","sourceRoot":"","sources":["../../../../src/payment/payrexx/api/makeFetcher.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"makeFetcher.js","sourceRoot":"","sources":["../../../../src/payment/payrexx/api/makeFetcher.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/payment/payrexx/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/payment/payrexx/index.ts"],"names":[],"mappings":"AAWA,cAAc,iBAAiB,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { PaymentAdapter, PaymentDirector, PaymentError } from '@unchainedshop/core-payment';
|
|
2
1
|
import { createLogger } from '@unchainedshop/logger';
|
|
3
2
|
import { mapOrderDataToGatewayObject, mapUserToGatewayObject } from './payrexx.js';
|
|
4
3
|
import createPayrexxAPI, { GatewayObjectStatus } from './api/index.js';
|
|
4
|
+
import { OrderPricingSheet, PaymentAdapter, PaymentDirector, PaymentError, } from '@unchainedshop/core';
|
|
5
5
|
export * from './middleware.js';
|
|
6
6
|
const logger = createLogger('unchained:core-payment:payrexx');
|
|
7
7
|
const Payrexx = {
|
|
@@ -12,14 +12,14 @@ const Payrexx = {
|
|
|
12
12
|
typeSupported(type) {
|
|
13
13
|
return type === 'GENERIC';
|
|
14
14
|
},
|
|
15
|
-
actions: (
|
|
16
|
-
const { modules } =
|
|
15
|
+
actions: (config, context) => {
|
|
16
|
+
const { modules } = context;
|
|
17
17
|
const getInstance = () => {
|
|
18
|
-
return
|
|
18
|
+
return config.find((c) => c.key === 'instance')?.value;
|
|
19
19
|
};
|
|
20
20
|
const api = createPayrexxAPI(getInstance(), process.env.PAYREXX_SECRET);
|
|
21
21
|
const adapterActions = {
|
|
22
|
-
...PaymentAdapter.actions(
|
|
22
|
+
...PaymentAdapter.actions(config, context),
|
|
23
23
|
configurationError() {
|
|
24
24
|
if (!process.env.PAYREXX_SECRET) {
|
|
25
25
|
return PaymentError.INCOMPLETE_CONFIGURATION;
|
|
@@ -38,10 +38,13 @@ const Payrexx = {
|
|
|
38
38
|
return false;
|
|
39
39
|
},
|
|
40
40
|
sign: async (transactionContext = {}) => {
|
|
41
|
-
const { orderPayment, userId, order } =
|
|
41
|
+
const { orderPayment, userId, order } = context;
|
|
42
42
|
if (orderPayment) {
|
|
43
43
|
// Order Checkout signing (One-time payment)
|
|
44
|
-
const pricing =
|
|
44
|
+
const pricing = OrderPricingSheet({
|
|
45
|
+
calculation: order.calculation,
|
|
46
|
+
currency: order.currency,
|
|
47
|
+
});
|
|
45
48
|
const gatewayObject = mapOrderDataToGatewayObject({ order, orderPayment, pricing }, transactionContext);
|
|
46
49
|
const gateway = await api.createGateway(gatewayObject);
|
|
47
50
|
return JSON.stringify(gateway);
|
|
@@ -73,12 +76,12 @@ const Payrexx = {
|
|
|
73
76
|
// transactionId,
|
|
74
77
|
// })) as StatusResponseSuccess;
|
|
75
78
|
// if (result.transactionId) {
|
|
76
|
-
// return parseRegistrationData(result);
|
|
79
|
+
// return await parseRegistrationData(result);
|
|
77
80
|
// }
|
|
78
81
|
return null;
|
|
79
82
|
},
|
|
80
83
|
async confirm() {
|
|
81
|
-
const { orderPayment } =
|
|
84
|
+
const { orderPayment } = context;
|
|
82
85
|
const { transactionId } = orderPayment;
|
|
83
86
|
if (!transactionId) {
|
|
84
87
|
return false;
|
|
@@ -100,7 +103,7 @@ const Payrexx = {
|
|
|
100
103
|
return false; // some other status with refund or anything, can't confirm!
|
|
101
104
|
},
|
|
102
105
|
async cancel() {
|
|
103
|
-
const { orderPayment } =
|
|
106
|
+
const { orderPayment } = context;
|
|
104
107
|
const { transactionId } = orderPayment;
|
|
105
108
|
if (!transactionId) {
|
|
106
109
|
return false;
|
|
@@ -123,7 +126,7 @@ const Payrexx = {
|
|
|
123
126
|
if (!gatewayId && !paymentCredentials) {
|
|
124
127
|
throw new Error('You have to provide gatewayId or paymentCredentials');
|
|
125
128
|
}
|
|
126
|
-
const { order } =
|
|
129
|
+
const { order } = context;
|
|
127
130
|
const orderPayment = await modules.orders.payments.findOrderPayment({
|
|
128
131
|
orderPaymentId: order.paymentId,
|
|
129
132
|
});
|
|
@@ -131,7 +134,10 @@ const Payrexx = {
|
|
|
131
134
|
if (!gatewayObject) {
|
|
132
135
|
throw new Error('Could not load gateway from the Payrexx API');
|
|
133
136
|
}
|
|
134
|
-
const pricing =
|
|
137
|
+
const pricing = OrderPricingSheet({
|
|
138
|
+
calculation: order.calculation,
|
|
139
|
+
currency: order.currency,
|
|
140
|
+
});
|
|
135
141
|
const { currency, amount } = pricing.total({ useNetPrice: false });
|
|
136
142
|
if (
|
|
137
143
|
// gatewayObject.status === 'authorized' || // authorized is only used for tokenization!
|
|
@@ -146,7 +152,7 @@ const Payrexx = {
|
|
|
146
152
|
throw new Error('The order payment is different from the initiating intent');
|
|
147
153
|
}
|
|
148
154
|
// confirm will do the transition, to do a checkout those stati above are fine
|
|
149
|
-
logger.
|
|
155
|
+
logger.info(`Mark as charged, status is ${gatewayObject.status}`, {
|
|
150
156
|
orderPaymentId: gatewayObject.referenceId,
|
|
151
157
|
});
|
|
152
158
|
return {
|
|
@@ -163,7 +169,7 @@ const Payrexx = {
|
|
|
163
169
|
throw e;
|
|
164
170
|
}
|
|
165
171
|
}
|
|
166
|
-
logger.
|
|
172
|
+
logger.info('Charge not possible', {
|
|
167
173
|
orderPaymentId: gatewayObject.referenceId,
|
|
168
174
|
status: gatewayObject.status,
|
|
169
175
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/payment/payrexx/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/payment/payrexx/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"middleware.d.ts","sourceRoot":"","sources":["../../../src/payment/payrexx/middleware.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,cAAc,
|
|
1
|
+
{"version":3,"file":"middleware.d.ts","sourceRoot":"","sources":["../../../src/payment/payrexx/middleware.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,cAAc,gDA+F1B,CAAC"}
|
|
@@ -2,10 +2,10 @@ import { createLogger } from '@unchainedshop/logger';
|
|
|
2
2
|
const logger = createLogger('unchained:core-payment:payrexx:webhook');
|
|
3
3
|
export const payrexxHandler = async (request, response) => {
|
|
4
4
|
const resolvedContext = request.unchainedContext;
|
|
5
|
-
const { modules } = resolvedContext;
|
|
5
|
+
const { modules, services } = resolvedContext;
|
|
6
6
|
const { transaction } = request.body;
|
|
7
7
|
if (!transaction) {
|
|
8
|
-
logger.
|
|
8
|
+
logger.info(`unhandled event type`, {
|
|
9
9
|
type: Object.keys(request.body).join(','),
|
|
10
10
|
});
|
|
11
11
|
response.writeHead(200);
|
|
@@ -18,7 +18,7 @@ export const payrexxHandler = async (request, response) => {
|
|
|
18
18
|
if (transaction.referenceId === '__IGNORE_WEBHOOK__' || transaction.status === 'waiting') {
|
|
19
19
|
// Ignore confirmed transactions, because those hooks are generated through calling the confirm()
|
|
20
20
|
// method in the payment adapter and could lead to double bookings.
|
|
21
|
-
logger.
|
|
21
|
+
logger.info(`unhandled transaction state: ${transaction.status}`);
|
|
22
22
|
response.writeHead(200);
|
|
23
23
|
response.end(JSON.stringify({
|
|
24
24
|
ignored: true,
|
|
@@ -26,7 +26,7 @@ export const payrexxHandler = async (request, response) => {
|
|
|
26
26
|
}));
|
|
27
27
|
return;
|
|
28
28
|
}
|
|
29
|
-
logger.
|
|
29
|
+
logger.info(`Processing event`, {
|
|
30
30
|
transactionId: transaction.id,
|
|
31
31
|
});
|
|
32
32
|
try {
|
|
@@ -34,8 +34,11 @@ export const payrexxHandler = async (request, response) => {
|
|
|
34
34
|
// Pre-Authorization Flow, referenceId is a userId
|
|
35
35
|
const { referenceId: paymentProviderId, invoice } = transaction;
|
|
36
36
|
const userId = '';
|
|
37
|
-
logger.
|
|
38
|
-
await
|
|
37
|
+
logger.info(`register credentials for: ${userId}`);
|
|
38
|
+
await services.orders.registerPaymentCredentials(paymentProviderId, {
|
|
39
|
+
userId,
|
|
40
|
+
transactionContext: { gatewayId: invoice.paymentRequestId },
|
|
41
|
+
});
|
|
39
42
|
logger.info(`registration successful`, {
|
|
40
43
|
paymentProviderId,
|
|
41
44
|
userId,
|
|
@@ -49,7 +52,7 @@ export const payrexxHandler = async (request, response) => {
|
|
|
49
52
|
}
|
|
50
53
|
else {
|
|
51
54
|
const { referenceId: orderPaymentId, invoice } = transaction;
|
|
52
|
-
logger.
|
|
55
|
+
logger.info(`checkout with orderPaymentId: ${orderPaymentId}`);
|
|
53
56
|
await modules.orders.payments.logEvent(orderPaymentId, {
|
|
54
57
|
transactionId: transaction.id,
|
|
55
58
|
});
|
|
@@ -59,11 +62,11 @@ export const payrexxHandler = async (request, response) => {
|
|
|
59
62
|
if (!orderPayment) {
|
|
60
63
|
throw new Error(`order payment not found with orderPaymentId: ${orderPaymentId}`);
|
|
61
64
|
}
|
|
62
|
-
const order = await
|
|
65
|
+
const order = await services.orders.checkoutOrder(orderPayment.orderId, {
|
|
63
66
|
paymentContext: {
|
|
64
67
|
gatewayId: invoice.paymentRequestId,
|
|
65
68
|
},
|
|
66
|
-
}
|
|
69
|
+
});
|
|
67
70
|
logger.info(`checkout successful`, {
|
|
68
71
|
orderPaymentId,
|
|
69
72
|
orderId: order._id,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"middleware.js","sourceRoot":"","sources":["../../../src/payment/payrexx/middleware.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAErD,MAAM,MAAM,GAAG,YAAY,CAAC,wCAAwC,CAAC,CAAC;AAEtE,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE;IACxD,MAAM,eAAe,GAAG,OAAO,CAAC,gBAA2B,CAAC;IAC5D,MAAM,EAAE,OAAO,EAAE,GAAG,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"middleware.js","sourceRoot":"","sources":["../../../src/payment/payrexx/middleware.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAErD,MAAM,MAAM,GAAG,YAAY,CAAC,wCAAwC,CAAC,CAAC;AAEtE,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE;IACxD,MAAM,eAAe,GAAG,OAAO,CAAC,gBAA2B,CAAC;IAC5D,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,eAAe,CAAC;IAE9C,MAAM,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAErC,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,CAAC,IAAI,CAAC,sBAAsB,EAAE;YAClC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;SAC1C,CAAC,CAAC;QACH,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QACxB,QAAQ,CAAC,GAAG,CACV,IAAI,CAAC,SAAS,CAAC;YACb,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,yBAAyB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,+BAA+B;SACrG,CAAC,CACH,CAAC;QACF,OAAO;IACT,CAAC;IACD,IAAI,WAAW,CAAC,WAAW,KAAK,oBAAoB,IAAI,WAAW,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QACzF,iGAAiG;QACjG,mEAAmE;QACnE,MAAM,CAAC,IAAI,CAAC,gCAAgC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;QAClE,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QACxB,QAAQ,CAAC,GAAG,CACV,IAAI,CAAC,SAAS,CAAC;YACb,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,gCAAgC,WAAW,CAAC,MAAM,EAAE;SAC9D,CAAC,CACH,CAAC;QACF,OAAO;IACT,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,kBAAkB,EAAE;QAC9B,aAAa,EAAE,WAAW,CAAC,EAAE;KAC9B,CAAC,CAAC;IACH,IAAI,CAAC;QACH,IAAI,WAAW,CAAC,kBAAkB,EAAE,CAAC;YACnC,kDAAkD;YAClD,MAAM,EAAE,WAAW,EAAE,iBAAiB,EAAE,OAAO,EAAE,GAAG,WAAW,CAAC;YAChE,MAAM,MAAM,GAAG,EAAE,CAAC;YAClB,MAAM,CAAC,IAAI,CAAC,6BAA6B,MAAM,EAAE,CAAC,CAAC;YACnD,MAAM,QAAQ,CAAC,MAAM,CAAC,0BAA0B,CAAC,iBAAiB,EAAE;gBAClE,MAAM;gBACN,kBAAkB,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,gBAAgB,EAAE;aAC5D,CAAC,CAAC;YACH,MAAM,CAAC,IAAI,CAAC,yBAAyB,EAAE;gBACrC,iBAAiB;gBACjB,MAAM;aACP,CAAC,CAAC;YACH,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;YACxB,QAAQ,CAAC,GAAG,CACV,IAAI,CAAC,SAAS,CAAC;gBACb,OAAO,EAAE,yBAAyB;gBAClC,iBAAiB;gBACjB,MAAM;aACP,CAAC,CACH,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,MAAM,EAAE,WAAW,EAAE,cAAc,EAAE,OAAO,EAAE,GAAG,WAAW,CAAC;YAC7D,MAAM,CAAC,IAAI,CAAC,iCAAiC,cAAc,EAAE,CAAC,CAAC;YAC/D,MAAM,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,cAAc,EAAE;gBACrD,aAAa,EAAE,WAAW,CAAC,EAAE;aAC9B,CAAC,CAAC;YACH,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAC;gBAClE,cAAc;aACf,CAAC,CAAC;YACH,IAAI,CAAC,YAAY,EAAE,CAAC;gBAClB,MAAM,IAAI,KAAK,CAAC,gDAAgD,cAAc,EAAE,CAAC,CAAC;YACpF,CAAC;YAED,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,YAAY,CAAC,OAAO,EAAE;gBACtE,cAAc,EAAE;oBACd,SAAS,EAAE,OAAO,CAAC,gBAAgB;iBACpC;aACF,CAAC,CAAC;YACH,MAAM,CAAC,IAAI,CAAC,qBAAqB,EAAE;gBACjC,cAAc;gBACd,OAAO,EAAE,KAAK,CAAC,GAAG;aACnB,CAAC,CAAC;YACH,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;YACxB,QAAQ,CAAC,GAAG,CACV,IAAI,CAAC,SAAS,CAAC;gBACb,OAAO,EAAE,qBAAqB;gBAC9B,OAAO,EAAE,KAAK,CAAC,GAAG;aACnB,CAAC,CACH,CAAC;QACJ,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE;YAClB,aAAa,EAAE,WAAW,CAAC,EAAE;SAC9B,CAAC,CAAC;QACH,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QACxB,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC9B,CAAC;AACH,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/payment/postfinance-checkout/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/payment/postfinance-checkout/index.ts"],"names":[],"mappings":"AA0BA,cAAc,iBAAiB,CAAC"}
|