@teleporthq/teleport-plugin-next-workflows 0.43.67 → 0.43.69
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/__tests__/_helpers/bind-workflow-utils.ts +16 -1
- package/__tests__/_helpers/fake-fetch.ts +96 -0
- package/__tests__/_helpers/fake-stripe.ts +52 -0
- package/__tests__/_helpers/load-handler.ts +22 -3
- package/__tests__/_helpers/load-invoice-route.ts +75 -0
- package/__tests__/_helpers/load-payment-drivers.ts +69 -0
- package/__tests__/_helpers/load-server-runtime.ts +33 -0
- package/__tests__/_helpers/run-generated-middleware.ts +50 -9
- package/__tests__/admin-form-hydration-target.test.ts +39 -0
- package/__tests__/admin-form-row-hydration.test.ts +58 -0
- package/__tests__/ai-select-database-data-handler.test.ts +14 -3
- package/__tests__/api-route-file-name-segments.test.ts +33 -0
- package/__tests__/app-secret-env.test.ts +55 -0
- package/__tests__/auth-env-secret-preservation.test.ts +22 -3
- package/__tests__/auth-nextauth-url.test.ts +134 -50
- package/__tests__/cart-add-item-kinds.test.ts +259 -0
- package/__tests__/cart-add-item-line-fields.test.ts +328 -0
- package/__tests__/cart-availability-add-to-cart.test.ts +108 -0
- package/__tests__/cart-get-total-discounts.test.ts +499 -0
- package/__tests__/cart-get-total-product-options.test.ts +195 -0
- package/__tests__/cart-get-total-subscriptions.test.ts +221 -0
- package/__tests__/cart-price-order.test.ts +283 -0
- package/__tests__/cart-update-item-quantity-recurring.test.ts +75 -0
- package/__tests__/client-loop-current-item.test.ts +164 -0
- package/__tests__/cron-route-loop-custom-node.test.ts +123 -0
- package/__tests__/cron-route-loop-templateparams.test.ts +7 -0
- package/__tests__/cron-route-verification.test.ts +252 -0
- package/__tests__/custom-js-runtime-base-url.test.ts +64 -0
- package/__tests__/custom-nodes-admin-module.test.ts +310 -0
- package/__tests__/data-api-browser-reads.test.ts +341 -0
- package/__tests__/data-api-low-stock-autofire.test.ts +67 -17
- package/__tests__/data-api-optional-feature-columns.test.ts +240 -0
- package/__tests__/data-api-protected-tables.test.ts +948 -0
- package/__tests__/data-node-not-awaited.test.ts +7 -3
- package/__tests__/data-write-missing-filter.test.ts +119 -0
- package/__tests__/ecommerce-rewriter-product-options.test.ts +143 -0
- package/__tests__/email-locale-senders.test.ts +1 -1
- package/__tests__/file-storage-upload-picked-files.test.ts +20 -0
- package/__tests__/input-debounce-per-field.test.ts +141 -0
- package/__tests__/internal-request-headers.test.ts +7 -3
- package/__tests__/invoice-data-access-replace.test.ts +340 -0
- package/__tests__/invoice-delivery-fee.test.ts +3 -2
- package/__tests__/invoice-generate-hydration.test.ts +20 -12
- package/__tests__/invoice-order-items-settle.test.ts +51 -46
- package/__tests__/invoice-product-options.test.ts +177 -0
- package/__tests__/invoice-regenerate-route.test.ts +488 -0
- package/__tests__/invoice-regional-tax.test.ts +3 -2
- package/__tests__/invoice-reservation.test.ts +195 -0
- package/__tests__/invoice-route-access.test.ts +275 -0
- package/__tests__/invoice-self-call-origin.test.ts +117 -0
- package/__tests__/invoice-tender.test.ts +550 -0
- package/__tests__/legacy-webhook-self-calls.test.ts +187 -0
- package/__tests__/locale-aware-redirects.test.ts +55 -26
- package/__tests__/loop-collection-unwrap.test.ts +6 -1
- package/__tests__/middleware-subscriber-access.test.ts +269 -0
- package/__tests__/payment-charge-user-earlier-attempt.test.ts +267 -0
- package/__tests__/payment-charge-user-handler-serialization.test.ts +47 -82
- package/__tests__/payment-charge-user-line-descriptions.test.ts +124 -0
- package/__tests__/payment-charge-user-report-refusal.test.ts +105 -0
- package/__tests__/payment-close-checkout-node.test.ts +127 -0
- package/__tests__/payment-driver-close-checkout.test.ts +1163 -0
- package/__tests__/payment-driver-coingate.test.ts +470 -0
- package/__tests__/payment-driver-inspect-checkout.test.ts +648 -0
- package/__tests__/payment-driver-mollie.test.ts +864 -0
- package/__tests__/payment-driver-paddle.test.ts +870 -0
- package/__tests__/payment-driver-paypal-capture.test.ts +158 -0
- package/__tests__/payment-driver-paypal-webhook.test.ts +367 -0
- package/__tests__/payment-driver-razorpay.test.ts +895 -0
- package/__tests__/payment-driver-square.test.ts +977 -0
- package/__tests__/payment-driver-stripe.test.ts +267 -0
- package/__tests__/payment-drivers-module.test.ts +429 -0
- package/__tests__/payment-legacy-webhook-routes.test.ts +588 -0
- package/__tests__/payment-redirect-and-order-notification.test.ts +98 -39
- package/__tests__/payment-refund.test.ts +523 -22
- package/__tests__/payment-subscription-nodes.test.ts +1360 -0
- package/__tests__/payment-webhook-route.test.ts +523 -0
- package/__tests__/paypal-webhook-signature-verification.test.ts +205 -0
- package/__tests__/prune-context-oversized-leaf.test.ts +1 -0
- package/__tests__/prune-context-state-keys.test.ts +89 -0
- package/__tests__/push-node-handlers.test.ts +291 -0
- package/__tests__/route-changed-trigger.test.ts +40 -0
- package/__tests__/runtime-storage-upload-access.test.ts +255 -0
- package/__tests__/security-runtime-shadow.test.ts +103 -1
- package/__tests__/segment-reply-changed-keys.test.ts +146 -0
- package/__tests__/segment-state-keys-emission.test.ts +185 -0
- package/__tests__/segment-state-needs.test.ts +102 -0
- package/__tests__/server-segment-context-integrity.test.ts +210 -0
- package/__tests__/server-step-signing.test.ts +371 -0
- package/__tests__/session-cookie-resolver.test.ts +59 -0
- package/__tests__/stock-decrement-audit.test.ts +17 -0
- package/__tests__/subscriber-access-route.test.ts +406 -0
- package/__tests__/webhook-delivery-lease.test.ts +316 -0
- package/__tests__/workflow-auth-guard.test.ts +253 -2
- package/dist/cjs/admin-form-hydration.d.ts +10 -0
- package/dist/cjs/admin-form-hydration.d.ts.map +1 -0
- package/dist/cjs/admin-form-hydration.js +25 -0
- package/dist/cjs/admin-form-hydration.js.map +1 -0
- package/dist/cjs/api-route-generator.d.ts +19 -3
- package/dist/cjs/api-route-generator.d.ts.map +1 -1
- package/dist/cjs/api-route-generator.js +190 -70
- package/dist/cjs/api-route-generator.js.map +1 -1
- package/dist/cjs/auth-generator.d.ts +4 -1
- package/dist/cjs/auth-generator.d.ts.map +1 -1
- package/dist/cjs/auth-generator.js +241 -62
- package/dist/cjs/auth-generator.js.map +1 -1
- package/dist/cjs/auth-return/signed-in-destination-code.d.ts +17 -0
- package/dist/cjs/auth-return/signed-in-destination-code.d.ts.map +1 -0
- package/dist/cjs/auth-return/signed-in-destination-code.js +37 -0
- package/dist/cjs/auth-return/signed-in-destination-code.js.map +1 -0
- package/dist/cjs/cart-pricing-preamble.d.ts +12 -0
- package/dist/cjs/cart-pricing-preamble.d.ts.map +1 -0
- package/dist/cjs/cart-pricing-preamble.js +23 -0
- package/dist/cjs/cart-pricing-preamble.js.map +1 -0
- package/dist/cjs/cron-request-verification.d.ts +24 -0
- package/dist/cjs/cron-request-verification.d.ts.map +1 -0
- package/dist/cjs/cron-request-verification.js +84 -0
- package/dist/cjs/cron-request-verification.js.map +1 -0
- package/dist/cjs/custom-node-modules.d.ts +30 -0
- package/dist/cjs/custom-node-modules.d.ts.map +1 -0
- package/dist/cjs/custom-node-modules.js +90 -0
- package/dist/cjs/custom-node-modules.js.map +1 -0
- package/dist/cjs/data-api-route-generator.d.ts +27 -0
- package/dist/cjs/data-api-route-generator.d.ts.map +1 -1
- package/dist/cjs/data-api-route-generator.js +366 -29
- package/dist/cjs/data-api-route-generator.js.map +1 -1
- package/dist/cjs/ecommerce/cart-availability.d.ts.map +1 -1
- package/dist/cjs/ecommerce/cart-availability.js +22 -13
- package/dist/cjs/ecommerce/cart-availability.js.map +1 -1
- package/dist/cjs/ecommerce/stock-decrement.d.ts +2 -1
- package/dist/cjs/ecommerce/stock-decrement.d.ts.map +1 -1
- package/dist/cjs/ecommerce/stock-decrement.js +6 -0
- package/dist/cjs/ecommerce/stock-decrement.js.map +1 -1
- package/dist/cjs/executor-generator.d.ts +0 -1
- package/dist/cjs/executor-generator.d.ts.map +1 -1
- package/dist/cjs/executor-generator.js +213 -20
- package/dist/cjs/executor-generator.js.map +1 -1
- package/dist/cjs/index.d.ts +12 -4
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +25 -2
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/invoice/api-routes-code.d.ts +26 -0
- package/dist/cjs/invoice/api-routes-code.d.ts.map +1 -1
- package/dist/cjs/invoice/api-routes-code.js +423 -391
- package/dist/cjs/invoice/api-routes-code.js.map +1 -1
- package/dist/cjs/invoice/data-access-code.d.ts.map +1 -1
- package/dist/cjs/invoice/data-access-code.js +420 -107
- package/dist/cjs/invoice/data-access-code.js.map +1 -1
- package/dist/cjs/invoice/index.d.ts.map +1 -1
- package/dist/cjs/invoice/index.js +24 -0
- package/dist/cjs/invoice/index.js.map +1 -1
- package/dist/cjs/invoice/invoice-assembly-code.d.ts +12 -0
- package/dist/cjs/invoice/invoice-assembly-code.d.ts.map +1 -0
- package/dist/cjs/invoice/invoice-assembly-code.js +517 -0
- package/dist/cjs/invoice/invoice-assembly-code.js.map +1 -0
- package/dist/cjs/invoice/invoice-html-code.d.ts.map +1 -1
- package/dist/cjs/invoice/invoice-html-code.js +111 -9
- package/dist/cjs/invoice/invoice-html-code.js.map +1 -1
- package/dist/cjs/invoice/pdf-service-client-code.d.ts.map +1 -1
- package/dist/cjs/invoice/pdf-service-client-code.js +3 -4
- package/dist/cjs/invoice/pdf-service-client-code.js.map +1 -1
- package/dist/cjs/nodes/account/account-login.d.ts.map +1 -1
- package/dist/cjs/nodes/account/account-login.js +4 -3
- package/dist/cjs/nodes/account/account-login.js.map +1 -1
- package/dist/cjs/nodes/account/account-signup.d.ts.map +1 -1
- package/dist/cjs/nodes/account/account-signup.js +7 -4
- package/dist/cjs/nodes/account/account-signup.js.map +1 -1
- package/dist/cjs/nodes/ai/ai-select-database-data.d.ts.map +1 -1
- package/dist/cjs/nodes/ai/ai-select-database-data.js +6 -1
- package/dist/cjs/nodes/ai/ai-select-database-data.js.map +1 -1
- package/dist/cjs/nodes/browser/browser-get-push-subscription.d.ts +9 -0
- package/dist/cjs/nodes/browser/browser-get-push-subscription.d.ts.map +1 -0
- package/dist/cjs/nodes/browser/browser-get-push-subscription.js +25 -0
- package/dist/cjs/nodes/browser/browser-get-push-subscription.js.map +1 -0
- package/dist/cjs/nodes/browser/browser-show-notification.d.ts +10 -0
- package/dist/cjs/nodes/browser/browser-show-notification.d.ts.map +1 -1
- package/dist/cjs/nodes/browser/browser-show-notification.js +65 -40
- package/dist/cjs/nodes/browser/browser-show-notification.js.map +1 -1
- package/dist/cjs/nodes/browser/browser-subscribe-to-push.d.ts +11 -0
- package/dist/cjs/nodes/browser/browser-subscribe-to-push.d.ts.map +1 -1
- package/dist/cjs/nodes/browser/browser-subscribe-to-push.js +21 -31
- package/dist/cjs/nodes/browser/browser-subscribe-to-push.js.map +1 -1
- package/dist/cjs/nodes/browser/browser-unsubscribe-from-push.d.ts +8 -0
- package/dist/cjs/nodes/browser/browser-unsubscribe-from-push.d.ts.map +1 -0
- package/dist/cjs/nodes/browser/browser-unsubscribe-from-push.js +24 -0
- package/dist/cjs/nodes/browser/browser-unsubscribe-from-push.js.map +1 -0
- package/dist/cjs/nodes/browser/push-api-access.d.ts +12 -0
- package/dist/cjs/nodes/browser/push-api-access.d.ts.map +1 -0
- package/dist/cjs/nodes/browser/push-api-access.js +19 -0
- package/dist/cjs/nodes/browser/push-api-access.js.map +1 -0
- package/dist/cjs/nodes/cart/cart-add-item.d.ts.map +1 -1
- package/dist/cjs/nodes/cart/cart-add-item.js +174 -10
- package/dist/cjs/nodes/cart/cart-add-item.js.map +1 -1
- package/dist/cjs/nodes/cart/cart-clear.d.ts.map +1 -1
- package/dist/cjs/nodes/cart/cart-clear.js +11 -0
- package/dist/cjs/nodes/cart/cart-clear.js.map +1 -1
- package/dist/cjs/nodes/cart/cart-get-total.d.ts.map +1 -1
- package/dist/cjs/nodes/cart/cart-get-total.js +260 -3
- package/dist/cjs/nodes/cart/cart-get-total.js.map +1 -1
- package/dist/cjs/nodes/cart/cart-price-order.d.ts +3 -0
- package/dist/cjs/nodes/cart/cart-price-order.d.ts.map +1 -0
- package/dist/cjs/nodes/cart/cart-price-order.js +281 -0
- package/dist/cjs/nodes/cart/cart-price-order.js.map +1 -0
- package/dist/cjs/nodes/cart/cart-update-item-quantity.d.ts.map +1 -1
- package/dist/cjs/nodes/cart/cart-update-item-quantity.js +7 -0
- package/dist/cjs/nodes/cart/cart-update-item-quantity.js.map +1 -1
- package/dist/cjs/nodes/data/data-count.d.ts.map +1 -1
- package/dist/cjs/nodes/data/data-count.js +6 -1
- package/dist/cjs/nodes/data/data-count.js.map +1 -1
- package/dist/cjs/nodes/data/data-create-item.d.ts.map +1 -1
- package/dist/cjs/nodes/data/data-create-item.js +11 -1
- package/dist/cjs/nodes/data/data-create-item.js.map +1 -1
- package/dist/cjs/nodes/data/data-delete-item.d.ts.map +1 -1
- package/dist/cjs/nodes/data/data-delete-item.js +29 -0
- package/dist/cjs/nodes/data/data-delete-item.js.map +1 -1
- package/dist/cjs/nodes/data/data-raw-query.d.ts.map +1 -1
- package/dist/cjs/nodes/data/data-raw-query.js +6 -1
- package/dist/cjs/nodes/data/data-raw-query.js.map +1 -1
- package/dist/cjs/nodes/data/data-select.d.ts.map +1 -1
- package/dist/cjs/nodes/data/data-select.js +6 -1
- package/dist/cjs/nodes/data/data-select.js.map +1 -1
- package/dist/cjs/nodes/data/data-update-item.d.ts.map +1 -1
- package/dist/cjs/nodes/data/data-update-item.js +29 -0
- package/dist/cjs/nodes/data/data-update-item.js.map +1 -1
- package/dist/cjs/nodes/ecommerce/ecommerce-generate-invoice.d.ts.map +1 -1
- package/dist/cjs/nodes/ecommerce/ecommerce-generate-invoice.js +7 -1
- package/dist/cjs/nodes/ecommerce/ecommerce-generate-invoice.js.map +1 -1
- package/dist/cjs/nodes/file-storage/file-storage-upload.d.ts.map +1 -1
- package/dist/cjs/nodes/file-storage/file-storage-upload.js +7 -0
- package/dist/cjs/nodes/file-storage/file-storage-upload.js.map +1 -1
- package/dist/cjs/nodes/general/general-custom-js.d.ts.map +1 -1
- package/dist/cjs/nodes/general/general-custom-js.js +21 -5
- package/dist/cjs/nodes/general/general-custom-js.js.map +1 -1
- package/dist/cjs/nodes/index.d.ts.map +1 -1
- package/dist/cjs/nodes/index.js +9 -4
- package/dist/cjs/nodes/index.js.map +1 -1
- package/dist/cjs/nodes/payment/payment-billing-portal.d.ts +3 -0
- package/dist/cjs/nodes/payment/payment-billing-portal.d.ts.map +1 -0
- package/dist/cjs/nodes/payment/payment-billing-portal.js +52 -0
- package/dist/cjs/nodes/payment/payment-billing-portal.js.map +1 -0
- package/dist/cjs/nodes/payment/payment-charge-user.d.ts.map +1 -1
- package/dist/cjs/nodes/payment/payment-charge-user.js +227 -360
- package/dist/cjs/nodes/payment/payment-charge-user.js.map +1 -1
- package/dist/cjs/nodes/payment/payment-close-checkout.d.ts +3 -0
- package/dist/cjs/nodes/payment/payment-close-checkout.d.ts.map +1 -0
- package/dist/cjs/nodes/payment/payment-close-checkout.js +141 -0
- package/dist/cjs/nodes/payment/payment-close-checkout.js.map +1 -0
- package/dist/cjs/nodes/payment/payment-ensure-subscription-plan.d.ts +3 -0
- package/dist/cjs/nodes/payment/payment-ensure-subscription-plan.d.ts.map +1 -0
- package/dist/cjs/nodes/payment/payment-ensure-subscription-plan.js +67 -0
- package/dist/cjs/nodes/payment/payment-ensure-subscription-plan.js.map +1 -0
- package/dist/cjs/nodes/payment/payment-manage-subscription.d.ts +3 -0
- package/dist/cjs/nodes/payment/payment-manage-subscription.d.ts.map +1 -0
- package/dist/cjs/nodes/payment/payment-manage-subscription.js +89 -0
- package/dist/cjs/nodes/payment/payment-manage-subscription.js.map +1 -0
- package/dist/cjs/nodes/payment/payment-refund.d.ts.map +1 -1
- package/dist/cjs/nodes/payment/payment-refund.js +50 -404
- package/dist/cjs/nodes/payment/payment-refund.js.map +1 -1
- package/dist/cjs/nodes/push/push-send-notification.d.ts +14 -0
- package/dist/cjs/nodes/push/push-send-notification.d.ts.map +1 -0
- package/dist/cjs/nodes/push/push-send-notification.js +83 -0
- package/dist/cjs/nodes/push/push-send-notification.js.map +1 -0
- package/dist/cjs/payments/drivers/coingate-driver-code.d.ts +16 -0
- package/dist/cjs/payments/drivers/coingate-driver-code.d.ts.map +1 -0
- package/dist/cjs/payments/drivers/coingate-driver-code.js +471 -0
- package/dist/cjs/payments/drivers/coingate-driver-code.js.map +1 -0
- package/dist/cjs/payments/drivers/mollie-driver-code.d.ts +16 -0
- package/dist/cjs/payments/drivers/mollie-driver-code.d.ts.map +1 -0
- package/dist/cjs/payments/drivers/mollie-driver-code.js +623 -0
- package/dist/cjs/payments/drivers/mollie-driver-code.js.map +1 -0
- package/dist/cjs/payments/drivers/paddle-driver-code.d.ts +12 -0
- package/dist/cjs/payments/drivers/paddle-driver-code.d.ts.map +1 -0
- package/dist/cjs/payments/drivers/paddle-driver-code.js +683 -0
- package/dist/cjs/payments/drivers/paddle-driver-code.js.map +1 -0
- package/dist/cjs/payments/drivers/paypal-driver-code.d.ts +12 -0
- package/dist/cjs/payments/drivers/paypal-driver-code.d.ts.map +1 -0
- package/dist/cjs/payments/drivers/paypal-driver-code.js +1261 -0
- package/dist/cjs/payments/drivers/paypal-driver-code.js.map +1 -0
- package/dist/cjs/payments/drivers/razorpay-driver-code.d.ts +12 -0
- package/dist/cjs/payments/drivers/razorpay-driver-code.d.ts.map +1 -0
- package/dist/cjs/payments/drivers/razorpay-driver-code.js +732 -0
- package/dist/cjs/payments/drivers/razorpay-driver-code.js.map +1 -0
- package/dist/cjs/payments/drivers/square-driver-code.d.ts +14 -0
- package/dist/cjs/payments/drivers/square-driver-code.d.ts.map +1 -0
- package/dist/cjs/payments/drivers/square-driver-code.js +931 -0
- package/dist/cjs/payments/drivers/square-driver-code.js.map +1 -0
- package/dist/cjs/payments/drivers/stripe-driver-code.d.ts +12 -0
- package/dist/cjs/payments/drivers/stripe-driver-code.d.ts.map +1 -0
- package/dist/cjs/payments/drivers/stripe-driver-code.js +778 -0
- package/dist/cjs/payments/drivers/stripe-driver-code.js.map +1 -0
- package/dist/cjs/payments/index.d.ts +66 -0
- package/dist/cjs/payments/index.d.ts.map +1 -0
- package/dist/cjs/payments/index.js +175 -0
- package/dist/cjs/payments/index.js.map +1 -0
- package/dist/cjs/payments/payment-core-code.d.ts +19 -0
- package/dist/cjs/payments/payment-core-code.d.ts.map +1 -0
- package/dist/cjs/payments/payment-core-code.js +422 -0
- package/dist/cjs/payments/payment-core-code.js.map +1 -0
- package/dist/cjs/payments/payment-driver-code-map.d.ts +4 -0
- package/dist/cjs/payments/payment-driver-code-map.d.ts.map +1 -0
- package/dist/cjs/payments/payment-driver-code-map.js +21 -0
- package/dist/cjs/payments/payment-driver-code-map.js.map +1 -0
- package/dist/cjs/payments/payment-drivers-scope.d.ts +35 -0
- package/dist/cjs/payments/payment-drivers-scope.d.ts.map +1 -0
- package/dist/cjs/payments/payment-drivers-scope.js +56 -0
- package/dist/cjs/payments/payment-drivers-scope.js.map +1 -0
- package/dist/cjs/payments/payment-registry-code.d.ts +8 -0
- package/dist/cjs/payments/payment-registry-code.d.ts.map +1 -0
- package/dist/cjs/payments/payment-registry-code.js +41 -0
- package/dist/cjs/payments/payment-registry-code.js.map +1 -0
- package/dist/cjs/pg-client-code.d.ts +10 -0
- package/dist/cjs/pg-client-code.d.ts.map +1 -1
- package/dist/cjs/pg-client-code.js +27 -1
- package/dist/cjs/pg-client-code.js.map +1 -1
- package/dist/cjs/runtime-storage-generator.d.ts +28 -0
- package/dist/cjs/runtime-storage-generator.d.ts.map +1 -1
- package/dist/cjs/runtime-storage-generator.js +240 -5
- package/dist/cjs/runtime-storage-generator.js.map +1 -1
- package/dist/cjs/secret-collector.d.ts.map +1 -1
- package/dist/cjs/secret-collector.js +8 -3
- package/dist/cjs/secret-collector.js.map +1 -1
- package/dist/cjs/security-scanner.d.ts +10 -1
- package/dist/cjs/security-scanner.d.ts.map +1 -1
- package/dist/cjs/security-scanner.js +19 -1
- package/dist/cjs/security-scanner.js.map +1 -1
- package/dist/cjs/segment-context-needs.d.ts +38 -0
- package/dist/cjs/segment-context-needs.d.ts.map +1 -0
- package/dist/cjs/segment-context-needs.js +129 -0
- package/dist/cjs/segment-context-needs.js.map +1 -0
- package/dist/cjs/segment-splitter.d.ts.map +1 -1
- package/dist/cjs/segment-splitter.js +6 -1
- package/dist/cjs/segment-splitter.js.map +1 -1
- package/dist/cjs/segment-trust.d.ts +50 -0
- package/dist/cjs/segment-trust.d.ts.map +1 -0
- package/dist/cjs/segment-trust.js +115 -0
- package/dist/cjs/segment-trust.js.map +1 -0
- package/dist/cjs/sent-email-log/sent-email-log-code.d.ts +19 -0
- package/dist/cjs/sent-email-log/sent-email-log-code.d.ts.map +1 -1
- package/dist/cjs/sent-email-log/sent-email-log-code.js +1 -24
- package/dist/cjs/sent-email-log/sent-email-log-code.js.map +1 -1
- package/dist/cjs/server-runtime-code.d.ts +34 -0
- package/dist/cjs/server-runtime-code.d.ts.map +1 -0
- package/dist/cjs/server-runtime-code.js +303 -0
- package/dist/cjs/server-runtime-code.js.map +1 -0
- package/dist/cjs/session-cookie-resolver.d.ts +3 -78
- package/dist/cjs/session-cookie-resolver.d.ts.map +1 -1
- package/dist/cjs/session-cookie-resolver.js +7 -276
- package/dist/cjs/session-cookie-resolver.js.map +1 -1
- package/dist/cjs/subscriber-access-route-generator.d.ts +71 -0
- package/dist/cjs/subscriber-access-route-generator.d.ts.map +1 -0
- package/dist/cjs/subscriber-access-route-generator.js +301 -0
- package/dist/cjs/subscriber-access-route-generator.js.map +1 -0
- package/dist/cjs/tsconfig.tsbuildinfo +1 -1
- package/dist/cjs/types.d.ts +6 -0
- package/dist/cjs/types.d.ts.map +1 -1
- package/dist/cjs/webhook-delivery-lease/index.d.ts +8 -0
- package/dist/cjs/webhook-delivery-lease/index.d.ts.map +1 -0
- package/dist/cjs/webhook-delivery-lease/index.js +41 -0
- package/dist/cjs/webhook-delivery-lease/index.js.map +1 -0
- package/dist/cjs/webhook-delivery-lease/webhook-delivery-lease-code.d.ts +26 -0
- package/dist/cjs/webhook-delivery-lease/webhook-delivery-lease-code.d.ts.map +1 -0
- package/dist/cjs/webhook-delivery-lease/webhook-delivery-lease-code.js +151 -0
- package/dist/cjs/webhook-delivery-lease/webhook-delivery-lease-code.js.map +1 -0
- package/dist/cjs/webhook-delivery-lease/webhook-delivery-lease-scope.d.ts +16 -0
- package/dist/cjs/webhook-delivery-lease/webhook-delivery-lease-scope.d.ts.map +1 -0
- package/dist/cjs/webhook-delivery-lease/webhook-delivery-lease-scope.js +19 -0
- package/dist/cjs/webhook-delivery-lease/webhook-delivery-lease-scope.js.map +1 -0
- package/dist/cjs/webhook-generator.d.ts +1 -1
- package/dist/cjs/webhook-generator.d.ts.map +1 -1
- package/dist/cjs/webhook-generator.js +342 -254
- package/dist/cjs/webhook-generator.js.map +1 -1
- package/dist/cjs/webhook-signature-verification.d.ts +17 -1
- package/dist/cjs/webhook-signature-verification.d.ts.map +1 -1
- package/dist/cjs/webhook-signature-verification.js +182 -27
- package/dist/cjs/webhook-signature-verification.js.map +1 -1
- package/dist/cjs/workflow-auth-generator.d.ts +9 -6
- package/dist/cjs/workflow-auth-generator.d.ts.map +1 -1
- package/dist/cjs/workflow-auth-generator.js +133 -29
- package/dist/cjs/workflow-auth-generator.js.map +1 -1
- package/dist/cjs/workflow-component-plugin.d.ts.map +1 -1
- package/dist/cjs/workflow-component-plugin.js +65 -28
- package/dist/cjs/workflow-component-plugin.js.map +1 -1
- package/dist/cjs/workflow-project-plugin.d.ts +13 -0
- package/dist/cjs/workflow-project-plugin.d.ts.map +1 -1
- package/dist/cjs/workflow-project-plugin.js +215 -65
- package/dist/cjs/workflow-project-plugin.js.map +1 -1
- package/dist/esm/admin-form-hydration.d.ts +10 -0
- package/dist/esm/admin-form-hydration.d.ts.map +1 -0
- package/dist/esm/admin-form-hydration.js +21 -0
- package/dist/esm/admin-form-hydration.js.map +1 -0
- package/dist/esm/api-route-generator.d.ts +19 -3
- package/dist/esm/api-route-generator.d.ts.map +1 -1
- package/dist/esm/api-route-generator.js +189 -70
- package/dist/esm/api-route-generator.js.map +1 -1
- package/dist/esm/auth-generator.d.ts +4 -1
- package/dist/esm/auth-generator.d.ts.map +1 -1
- package/dist/esm/auth-generator.js +241 -62
- package/dist/esm/auth-generator.js.map +1 -1
- package/dist/esm/auth-return/signed-in-destination-code.d.ts +17 -0
- package/dist/esm/auth-return/signed-in-destination-code.d.ts.map +1 -0
- package/dist/esm/auth-return/signed-in-destination-code.js +33 -0
- package/dist/esm/auth-return/signed-in-destination-code.js.map +1 -0
- package/dist/esm/cart-pricing-preamble.d.ts +12 -0
- package/dist/esm/cart-pricing-preamble.d.ts.map +1 -0
- package/dist/esm/cart-pricing-preamble.js +19 -0
- package/dist/esm/cart-pricing-preamble.js.map +1 -0
- package/dist/esm/cron-request-verification.d.ts +24 -0
- package/dist/esm/cron-request-verification.d.ts.map +1 -0
- package/dist/esm/cron-request-verification.js +80 -0
- package/dist/esm/cron-request-verification.js.map +1 -0
- package/dist/esm/custom-node-modules.d.ts +30 -0
- package/dist/esm/custom-node-modules.d.ts.map +1 -0
- package/dist/esm/custom-node-modules.js +84 -0
- package/dist/esm/custom-node-modules.js.map +1 -0
- package/dist/esm/data-api-route-generator.d.ts +27 -0
- package/dist/esm/data-api-route-generator.d.ts.map +1 -1
- package/dist/esm/data-api-route-generator.js +365 -28
- package/dist/esm/data-api-route-generator.js.map +1 -1
- package/dist/esm/ecommerce/cart-availability.d.ts.map +1 -1
- package/dist/esm/ecommerce/cart-availability.js +22 -13
- package/dist/esm/ecommerce/cart-availability.js.map +1 -1
- package/dist/esm/ecommerce/stock-decrement.d.ts +2 -1
- package/dist/esm/ecommerce/stock-decrement.d.ts.map +1 -1
- package/dist/esm/ecommerce/stock-decrement.js +6 -0
- package/dist/esm/ecommerce/stock-decrement.js.map +1 -1
- package/dist/esm/executor-generator.d.ts +0 -1
- package/dist/esm/executor-generator.d.ts.map +1 -1
- package/dist/esm/executor-generator.js +212 -18
- package/dist/esm/executor-generator.js.map +1 -1
- package/dist/esm/index.d.ts +12 -4
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +10 -4
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/invoice/api-routes-code.d.ts +26 -0
- package/dist/esm/invoice/api-routes-code.d.ts.map +1 -1
- package/dist/esm/invoice/api-routes-code.js +421 -390
- package/dist/esm/invoice/api-routes-code.js.map +1 -1
- package/dist/esm/invoice/data-access-code.d.ts.map +1 -1
- package/dist/esm/invoice/data-access-code.js +420 -107
- package/dist/esm/invoice/data-access-code.js.map +1 -1
- package/dist/esm/invoice/index.d.ts.map +1 -1
- package/dist/esm/invoice/index.js +25 -1
- package/dist/esm/invoice/index.js.map +1 -1
- package/dist/esm/invoice/invoice-assembly-code.d.ts +12 -0
- package/dist/esm/invoice/invoice-assembly-code.d.ts.map +1 -0
- package/dist/esm/invoice/invoice-assembly-code.js +513 -0
- package/dist/esm/invoice/invoice-assembly-code.js.map +1 -0
- package/dist/esm/invoice/invoice-html-code.d.ts.map +1 -1
- package/dist/esm/invoice/invoice-html-code.js +111 -9
- package/dist/esm/invoice/invoice-html-code.js.map +1 -1
- package/dist/esm/invoice/pdf-service-client-code.d.ts.map +1 -1
- package/dist/esm/invoice/pdf-service-client-code.js +3 -4
- package/dist/esm/invoice/pdf-service-client-code.js.map +1 -1
- package/dist/esm/nodes/account/account-login.d.ts.map +1 -1
- package/dist/esm/nodes/account/account-login.js +4 -3
- package/dist/esm/nodes/account/account-login.js.map +1 -1
- package/dist/esm/nodes/account/account-signup.d.ts.map +1 -1
- package/dist/esm/nodes/account/account-signup.js +7 -4
- package/dist/esm/nodes/account/account-signup.js.map +1 -1
- package/dist/esm/nodes/ai/ai-select-database-data.d.ts.map +1 -1
- package/dist/esm/nodes/ai/ai-select-database-data.js +6 -1
- package/dist/esm/nodes/ai/ai-select-database-data.js.map +1 -1
- package/dist/esm/nodes/browser/browser-get-push-subscription.d.ts +9 -0
- package/dist/esm/nodes/browser/browser-get-push-subscription.d.ts.map +1 -0
- package/dist/esm/nodes/browser/browser-get-push-subscription.js +22 -0
- package/dist/esm/nodes/browser/browser-get-push-subscription.js.map +1 -0
- package/dist/esm/nodes/browser/browser-show-notification.d.ts +10 -0
- package/dist/esm/nodes/browser/browser-show-notification.d.ts.map +1 -1
- package/dist/esm/nodes/browser/browser-show-notification.js +65 -40
- package/dist/esm/nodes/browser/browser-show-notification.js.map +1 -1
- package/dist/esm/nodes/browser/browser-subscribe-to-push.d.ts +11 -0
- package/dist/esm/nodes/browser/browser-subscribe-to-push.d.ts.map +1 -1
- package/dist/esm/nodes/browser/browser-subscribe-to-push.js +21 -31
- package/dist/esm/nodes/browser/browser-subscribe-to-push.js.map +1 -1
- package/dist/esm/nodes/browser/browser-unsubscribe-from-push.d.ts +8 -0
- package/dist/esm/nodes/browser/browser-unsubscribe-from-push.d.ts.map +1 -0
- package/dist/esm/nodes/browser/browser-unsubscribe-from-push.js +21 -0
- package/dist/esm/nodes/browser/browser-unsubscribe-from-push.js.map +1 -0
- package/dist/esm/nodes/browser/push-api-access.d.ts +12 -0
- package/dist/esm/nodes/browser/push-api-access.d.ts.map +1 -0
- package/dist/esm/nodes/browser/push-api-access.js +13 -0
- package/dist/esm/nodes/browser/push-api-access.js.map +1 -0
- package/dist/esm/nodes/cart/cart-add-item.d.ts.map +1 -1
- package/dist/esm/nodes/cart/cart-add-item.js +174 -10
- package/dist/esm/nodes/cart/cart-add-item.js.map +1 -1
- package/dist/esm/nodes/cart/cart-clear.d.ts.map +1 -1
- package/dist/esm/nodes/cart/cart-clear.js +11 -0
- package/dist/esm/nodes/cart/cart-clear.js.map +1 -1
- package/dist/esm/nodes/cart/cart-get-total.d.ts.map +1 -1
- package/dist/esm/nodes/cart/cart-get-total.js +261 -4
- package/dist/esm/nodes/cart/cart-get-total.js.map +1 -1
- package/dist/esm/nodes/cart/cart-price-order.d.ts +3 -0
- package/dist/esm/nodes/cart/cart-price-order.d.ts.map +1 -0
- package/dist/esm/nodes/cart/cart-price-order.js +278 -0
- package/dist/esm/nodes/cart/cart-price-order.js.map +1 -0
- package/dist/esm/nodes/cart/cart-update-item-quantity.d.ts.map +1 -1
- package/dist/esm/nodes/cart/cart-update-item-quantity.js +7 -0
- package/dist/esm/nodes/cart/cart-update-item-quantity.js.map +1 -1
- package/dist/esm/nodes/data/data-count.d.ts.map +1 -1
- package/dist/esm/nodes/data/data-count.js +6 -1
- package/dist/esm/nodes/data/data-count.js.map +1 -1
- package/dist/esm/nodes/data/data-create-item.d.ts.map +1 -1
- package/dist/esm/nodes/data/data-create-item.js +11 -1
- package/dist/esm/nodes/data/data-create-item.js.map +1 -1
- package/dist/esm/nodes/data/data-delete-item.d.ts.map +1 -1
- package/dist/esm/nodes/data/data-delete-item.js +29 -0
- package/dist/esm/nodes/data/data-delete-item.js.map +1 -1
- package/dist/esm/nodes/data/data-raw-query.d.ts.map +1 -1
- package/dist/esm/nodes/data/data-raw-query.js +6 -1
- package/dist/esm/nodes/data/data-raw-query.js.map +1 -1
- package/dist/esm/nodes/data/data-select.d.ts.map +1 -1
- package/dist/esm/nodes/data/data-select.js +6 -1
- package/dist/esm/nodes/data/data-select.js.map +1 -1
- package/dist/esm/nodes/data/data-update-item.d.ts.map +1 -1
- package/dist/esm/nodes/data/data-update-item.js +29 -0
- package/dist/esm/nodes/data/data-update-item.js.map +1 -1
- package/dist/esm/nodes/ecommerce/ecommerce-generate-invoice.d.ts.map +1 -1
- package/dist/esm/nodes/ecommerce/ecommerce-generate-invoice.js +7 -1
- package/dist/esm/nodes/ecommerce/ecommerce-generate-invoice.js.map +1 -1
- package/dist/esm/nodes/file-storage/file-storage-upload.d.ts.map +1 -1
- package/dist/esm/nodes/file-storage/file-storage-upload.js +7 -0
- package/dist/esm/nodes/file-storage/file-storage-upload.js.map +1 -1
- package/dist/esm/nodes/general/general-custom-js.d.ts.map +1 -1
- package/dist/esm/nodes/general/general-custom-js.js +21 -5
- package/dist/esm/nodes/general/general-custom-js.js.map +1 -1
- package/dist/esm/nodes/index.d.ts.map +1 -1
- package/dist/esm/nodes/index.js +9 -4
- package/dist/esm/nodes/index.js.map +1 -1
- package/dist/esm/nodes/payment/payment-billing-portal.d.ts +3 -0
- package/dist/esm/nodes/payment/payment-billing-portal.d.ts.map +1 -0
- package/dist/esm/nodes/payment/payment-billing-portal.js +49 -0
- package/dist/esm/nodes/payment/payment-billing-portal.js.map +1 -0
- package/dist/esm/nodes/payment/payment-charge-user.d.ts.map +1 -1
- package/dist/esm/nodes/payment/payment-charge-user.js +227 -360
- package/dist/esm/nodes/payment/payment-charge-user.js.map +1 -1
- package/dist/esm/nodes/payment/payment-close-checkout.d.ts +3 -0
- package/dist/esm/nodes/payment/payment-close-checkout.d.ts.map +1 -0
- package/dist/esm/nodes/payment/payment-close-checkout.js +138 -0
- package/dist/esm/nodes/payment/payment-close-checkout.js.map +1 -0
- package/dist/esm/nodes/payment/payment-ensure-subscription-plan.d.ts +3 -0
- package/dist/esm/nodes/payment/payment-ensure-subscription-plan.d.ts.map +1 -0
- package/dist/esm/nodes/payment/payment-ensure-subscription-plan.js +64 -0
- package/dist/esm/nodes/payment/payment-ensure-subscription-plan.js.map +1 -0
- package/dist/esm/nodes/payment/payment-manage-subscription.d.ts +3 -0
- package/dist/esm/nodes/payment/payment-manage-subscription.d.ts.map +1 -0
- package/dist/esm/nodes/payment/payment-manage-subscription.js +86 -0
- package/dist/esm/nodes/payment/payment-manage-subscription.js.map +1 -0
- package/dist/esm/nodes/payment/payment-refund.d.ts.map +1 -1
- package/dist/esm/nodes/payment/payment-refund.js +50 -404
- package/dist/esm/nodes/payment/payment-refund.js.map +1 -1
- package/dist/esm/nodes/push/push-send-notification.d.ts +14 -0
- package/dist/esm/nodes/push/push-send-notification.d.ts.map +1 -0
- package/dist/esm/nodes/push/push-send-notification.js +80 -0
- package/dist/esm/nodes/push/push-send-notification.js.map +1 -0
- package/dist/esm/payments/drivers/coingate-driver-code.d.ts +16 -0
- package/dist/esm/payments/drivers/coingate-driver-code.d.ts.map +1 -0
- package/dist/esm/payments/drivers/coingate-driver-code.js +467 -0
- package/dist/esm/payments/drivers/coingate-driver-code.js.map +1 -0
- package/dist/esm/payments/drivers/mollie-driver-code.d.ts +16 -0
- package/dist/esm/payments/drivers/mollie-driver-code.d.ts.map +1 -0
- package/dist/esm/payments/drivers/mollie-driver-code.js +619 -0
- package/dist/esm/payments/drivers/mollie-driver-code.js.map +1 -0
- package/dist/esm/payments/drivers/paddle-driver-code.d.ts +12 -0
- package/dist/esm/payments/drivers/paddle-driver-code.d.ts.map +1 -0
- package/dist/esm/payments/drivers/paddle-driver-code.js +679 -0
- package/dist/esm/payments/drivers/paddle-driver-code.js.map +1 -0
- package/dist/esm/payments/drivers/paypal-driver-code.d.ts +12 -0
- package/dist/esm/payments/drivers/paypal-driver-code.d.ts.map +1 -0
- package/dist/esm/payments/drivers/paypal-driver-code.js +1257 -0
- package/dist/esm/payments/drivers/paypal-driver-code.js.map +1 -0
- package/dist/esm/payments/drivers/razorpay-driver-code.d.ts +12 -0
- package/dist/esm/payments/drivers/razorpay-driver-code.d.ts.map +1 -0
- package/dist/esm/payments/drivers/razorpay-driver-code.js +728 -0
- package/dist/esm/payments/drivers/razorpay-driver-code.js.map +1 -0
- package/dist/esm/payments/drivers/square-driver-code.d.ts +14 -0
- package/dist/esm/payments/drivers/square-driver-code.d.ts.map +1 -0
- package/dist/esm/payments/drivers/square-driver-code.js +927 -0
- package/dist/esm/payments/drivers/square-driver-code.js.map +1 -0
- package/dist/esm/payments/drivers/stripe-driver-code.d.ts +12 -0
- package/dist/esm/payments/drivers/stripe-driver-code.d.ts.map +1 -0
- package/dist/esm/payments/drivers/stripe-driver-code.js +774 -0
- package/dist/esm/payments/drivers/stripe-driver-code.js.map +1 -0
- package/dist/esm/payments/index.d.ts +66 -0
- package/dist/esm/payments/index.d.ts.map +1 -0
- package/dist/esm/payments/index.js +164 -0
- package/dist/esm/payments/index.js.map +1 -0
- package/dist/esm/payments/payment-core-code.d.ts +19 -0
- package/dist/esm/payments/payment-core-code.d.ts.map +1 -0
- package/dist/esm/payments/payment-core-code.js +418 -0
- package/dist/esm/payments/payment-core-code.js.map +1 -0
- package/dist/esm/payments/payment-driver-code-map.d.ts +4 -0
- package/dist/esm/payments/payment-driver-code-map.d.ts.map +1 -0
- package/dist/esm/payments/payment-driver-code-map.js +18 -0
- package/dist/esm/payments/payment-driver-code-map.js.map +1 -0
- package/dist/esm/payments/payment-drivers-scope.d.ts +35 -0
- package/dist/esm/payments/payment-drivers-scope.d.ts.map +1 -0
- package/dist/esm/payments/payment-drivers-scope.js +51 -0
- package/dist/esm/payments/payment-drivers-scope.js.map +1 -0
- package/dist/esm/payments/payment-registry-code.d.ts +8 -0
- package/dist/esm/payments/payment-registry-code.d.ts.map +1 -0
- package/dist/esm/payments/payment-registry-code.js +37 -0
- package/dist/esm/payments/payment-registry-code.js.map +1 -0
- package/dist/esm/pg-client-code.d.ts +10 -0
- package/dist/esm/pg-client-code.d.ts.map +1 -1
- package/dist/esm/pg-client-code.js +25 -0
- package/dist/esm/pg-client-code.js.map +1 -1
- package/dist/esm/runtime-storage-generator.d.ts +28 -0
- package/dist/esm/runtime-storage-generator.d.ts.map +1 -1
- package/dist/esm/runtime-storage-generator.js +239 -4
- package/dist/esm/runtime-storage-generator.js.map +1 -1
- package/dist/esm/secret-collector.d.ts.map +1 -1
- package/dist/esm/secret-collector.js +8 -3
- package/dist/esm/secret-collector.js.map +1 -1
- package/dist/esm/security-scanner.d.ts +10 -1
- package/dist/esm/security-scanner.d.ts.map +1 -1
- package/dist/esm/security-scanner.js +18 -0
- package/dist/esm/security-scanner.js.map +1 -1
- package/dist/esm/segment-context-needs.d.ts +38 -0
- package/dist/esm/segment-context-needs.d.ts.map +1 -0
- package/dist/esm/segment-context-needs.js +125 -0
- package/dist/esm/segment-context-needs.js.map +1 -0
- package/dist/esm/segment-splitter.d.ts.map +1 -1
- package/dist/esm/segment-splitter.js +6 -1
- package/dist/esm/segment-splitter.js.map +1 -1
- package/dist/esm/segment-trust.d.ts +50 -0
- package/dist/esm/segment-trust.d.ts.map +1 -0
- package/dist/esm/segment-trust.js +111 -0
- package/dist/esm/segment-trust.js.map +1 -0
- package/dist/esm/sent-email-log/sent-email-log-code.d.ts +19 -0
- package/dist/esm/sent-email-log/sent-email-log-code.d.ts.map +1 -1
- package/dist/esm/sent-email-log/sent-email-log-code.js +2 -25
- package/dist/esm/sent-email-log/sent-email-log-code.js.map +1 -1
- package/dist/esm/server-runtime-code.d.ts +34 -0
- package/dist/esm/server-runtime-code.d.ts.map +1 -0
- package/dist/esm/server-runtime-code.js +299 -0
- package/dist/esm/server-runtime-code.js.map +1 -0
- package/dist/esm/session-cookie-resolver.d.ts +3 -78
- package/dist/esm/session-cookie-resolver.d.ts.map +1 -1
- package/dist/esm/session-cookie-resolver.js +7 -274
- package/dist/esm/session-cookie-resolver.js.map +1 -1
- package/dist/esm/subscriber-access-route-generator.d.ts +71 -0
- package/dist/esm/subscriber-access-route-generator.d.ts.map +1 -0
- package/dist/esm/subscriber-access-route-generator.js +292 -0
- package/dist/esm/subscriber-access-route-generator.js.map +1 -0
- package/dist/esm/tsconfig.tsbuildinfo +1 -1
- package/dist/esm/types.d.ts +6 -0
- package/dist/esm/types.d.ts.map +1 -1
- package/dist/esm/webhook-delivery-lease/index.d.ts +8 -0
- package/dist/esm/webhook-delivery-lease/index.d.ts.map +1 -0
- package/dist/esm/webhook-delivery-lease/index.js +37 -0
- package/dist/esm/webhook-delivery-lease/index.js.map +1 -0
- package/dist/esm/webhook-delivery-lease/webhook-delivery-lease-code.d.ts +26 -0
- package/dist/esm/webhook-delivery-lease/webhook-delivery-lease-code.d.ts.map +1 -0
- package/dist/esm/webhook-delivery-lease/webhook-delivery-lease-code.js +147 -0
- package/dist/esm/webhook-delivery-lease/webhook-delivery-lease-code.js.map +1 -0
- package/dist/esm/webhook-delivery-lease/webhook-delivery-lease-scope.d.ts +16 -0
- package/dist/esm/webhook-delivery-lease/webhook-delivery-lease-scope.d.ts.map +1 -0
- package/dist/esm/webhook-delivery-lease/webhook-delivery-lease-scope.js +16 -0
- package/dist/esm/webhook-delivery-lease/webhook-delivery-lease-scope.js.map +1 -0
- package/dist/esm/webhook-generator.d.ts +1 -1
- package/dist/esm/webhook-generator.d.ts.map +1 -1
- package/dist/esm/webhook-generator.js +342 -254
- package/dist/esm/webhook-generator.js.map +1 -1
- package/dist/esm/webhook-signature-verification.d.ts +17 -1
- package/dist/esm/webhook-signature-verification.d.ts.map +1 -1
- package/dist/esm/webhook-signature-verification.js +179 -25
- package/dist/esm/webhook-signature-verification.js.map +1 -1
- package/dist/esm/workflow-auth-generator.d.ts +9 -6
- package/dist/esm/workflow-auth-generator.d.ts.map +1 -1
- package/dist/esm/workflow-auth-generator.js +132 -28
- package/dist/esm/workflow-auth-generator.js.map +1 -1
- package/dist/esm/workflow-component-plugin.d.ts.map +1 -1
- package/dist/esm/workflow-component-plugin.js +65 -28
- package/dist/esm/workflow-component-plugin.js.map +1 -1
- package/dist/esm/workflow-project-plugin.d.ts +13 -0
- package/dist/esm/workflow-project-plugin.d.ts.map +1 -1
- package/dist/esm/workflow-project-plugin.js +212 -63
- package/dist/esm/workflow-project-plugin.js.map +1 -1
- package/package.json +4 -4
- package/src/admin-form-hydration.ts +28 -0
- package/src/api-route-generator.ts +251 -64
- package/src/auth-generator.ts +273 -53
- package/src/auth-return/signed-in-destination-code.ts +32 -0
- package/src/cart-pricing-preamble.ts +22 -0
- package/src/cron-request-verification.ts +79 -0
- package/src/custom-node-modules.ts +102 -0
- package/src/data-api-route-generator.ts +370 -28
- package/src/ecommerce/cart-availability.ts +22 -13
- package/src/ecommerce/stock-decrement.ts +13 -1
- package/src/executor-generator.ts +212 -19
- package/src/index.ts +28 -7
- package/src/invoice/api-routes-code.ts +424 -391
- package/src/invoice/data-access-code.ts +431 -110
- package/src/invoice/index.ts +31 -1
- package/src/invoice/invoice-assembly-code.ts +514 -0
- package/src/invoice/invoice-html-code.ts +111 -9
- package/src/invoice/pdf-service-client-code.ts +3 -4
- package/src/nodes/account/account-login.ts +4 -3
- package/src/nodes/account/account-signup.ts +7 -4
- package/src/nodes/ai/ai-select-database-data.ts +10 -1
- package/src/nodes/browser/browser-get-push-subscription.ts +23 -0
- package/src/nodes/browser/browser-show-notification.ts +61 -38
- package/src/nodes/browser/browser-subscribe-to-push.ts +26 -36
- package/src/nodes/browser/browser-unsubscribe-from-push.ts +22 -0
- package/src/nodes/browser/push-api-access.ts +20 -0
- package/src/nodes/cart/cart-add-item.ts +200 -9
- package/src/nodes/cart/cart-clear.ts +11 -0
- package/src/nodes/cart/cart-get-total.ts +279 -7
- package/src/nodes/cart/cart-price-order.ts +351 -0
- package/src/nodes/cart/cart-update-item-quantity.ts +7 -0
- package/src/nodes/data/data-count.ts +9 -1
- package/src/nodes/data/data-create-item.ts +15 -1
- package/src/nodes/data/data-delete-item.ts +32 -0
- package/src/nodes/data/data-raw-query.ts +9 -1
- package/src/nodes/data/data-select.ts +9 -1
- package/src/nodes/data/data-update-item.ts +32 -0
- package/src/nodes/ecommerce/ecommerce-generate-invoice.ts +11 -1
- package/src/nodes/file-storage/file-storage-upload.ts +8 -0
- package/src/nodes/general/general-custom-js.ts +21 -5
- package/src/nodes/index.ts +16 -6
- package/src/nodes/payment/payment-billing-portal.ts +51 -0
- package/src/nodes/payment/payment-charge-user.ts +236 -442
- package/src/nodes/payment/payment-close-checkout.ts +137 -0
- package/src/nodes/payment/payment-ensure-subscription-plan.ts +66 -0
- package/src/nodes/payment/payment-manage-subscription.ts +89 -0
- package/src/nodes/payment/payment-refund.ts +52 -467
- package/src/nodes/payment-drivers-global.d.ts +13 -0
- package/src/nodes/push/push-send-notification.ts +83 -0
- package/src/nodes/workflow-utils-global.d.ts +5 -0
- package/src/payments/drivers/coingate-driver-code.ts +466 -0
- package/src/payments/drivers/mollie-driver-code.ts +618 -0
- package/src/payments/drivers/paddle-driver-code.ts +678 -0
- package/src/payments/drivers/paypal-driver-code.ts +1256 -0
- package/src/payments/drivers/razorpay-driver-code.ts +727 -0
- package/src/payments/drivers/square-driver-code.ts +926 -0
- package/src/payments/drivers/stripe-driver-code.ts +773 -0
- package/src/payments/index.ts +204 -0
- package/src/payments/payment-core-code.ts +421 -0
- package/src/payments/payment-driver-code-map.ts +19 -0
- package/src/payments/payment-drivers-scope.ts +66 -0
- package/src/payments/payment-registry-code.ts +38 -0
- package/src/pg-client-code.ts +30 -0
- package/src/runtime-storage-generator.ts +241 -4
- package/src/secret-collector.ts +8 -3
- package/src/security-scanner.ts +22 -0
- package/src/segment-context-needs.ts +148 -0
- package/src/segment-splitter.ts +6 -1
- package/src/segment-trust.ts +170 -0
- package/src/sent-email-log/sent-email-log-code.ts +2 -32
- package/src/server-runtime-code.ts +298 -0
- package/src/session-cookie-resolver.ts +9 -277
- package/src/subscriber-access-route-generator.ts +351 -0
- package/src/types.ts +6 -0
- package/src/webhook-delivery-lease/index.ts +44 -0
- package/src/webhook-delivery-lease/webhook-delivery-lease-code.ts +151 -0
- package/src/webhook-delivery-lease/webhook-delivery-lease-scope.ts +18 -0
- package/src/webhook-generator.ts +359 -260
- package/src/webhook-signature-verification.ts +180 -25
- package/src/workflow-auth-generator.ts +137 -28
- package/src/workflow-component-plugin.ts +77 -20
- package/src/workflow-project-plugin.ts +247 -44
- package/dist/cjs/nodes/payment/payment-cancel-plan.d.ts +0 -3
- package/dist/cjs/nodes/payment/payment-cancel-plan.d.ts.map +0 -1
- package/dist/cjs/nodes/payment/payment-cancel-plan.js +0 -33
- package/dist/cjs/nodes/payment/payment-cancel-plan.js.map +0 -1
- package/dist/cjs/nodes/payment/payment-create-subscription.d.ts +0 -3
- package/dist/cjs/nodes/payment/payment-create-subscription.d.ts.map +0 -1
- package/dist/cjs/nodes/payment/payment-create-subscription.js +0 -41
- package/dist/cjs/nodes/payment/payment-create-subscription.js.map +0 -1
- package/dist/cjs/nodes/payment/payment-subscribe-to-plan.d.ts +0 -3
- package/dist/cjs/nodes/payment/payment-subscribe-to-plan.d.ts.map +0 -1
- package/dist/cjs/nodes/payment/payment-subscribe-to-plan.js +0 -45
- package/dist/cjs/nodes/payment/payment-subscribe-to-plan.js.map +0 -1
- package/dist/esm/nodes/payment/payment-cancel-plan.d.ts +0 -3
- package/dist/esm/nodes/payment/payment-cancel-plan.d.ts.map +0 -1
- package/dist/esm/nodes/payment/payment-cancel-plan.js +0 -30
- package/dist/esm/nodes/payment/payment-cancel-plan.js.map +0 -1
- package/dist/esm/nodes/payment/payment-create-subscription.d.ts +0 -3
- package/dist/esm/nodes/payment/payment-create-subscription.d.ts.map +0 -1
- package/dist/esm/nodes/payment/payment-create-subscription.js +0 -38
- package/dist/esm/nodes/payment/payment-create-subscription.js.map +0 -1
- package/dist/esm/nodes/payment/payment-subscribe-to-plan.d.ts +0 -3
- package/dist/esm/nodes/payment/payment-subscribe-to-plan.d.ts.map +0 -1
- package/dist/esm/nodes/payment/payment-subscribe-to-plan.js +0 -42
- package/dist/esm/nodes/payment/payment-subscribe-to-plan.js.map +0 -1
- package/src/nodes/payment/payment-cancel-plan.ts +0 -33
- package/src/nodes/payment/payment-create-subscription.ts +0 -42
- package/src/nodes/payment/payment-subscribe-to-plan.ts +0 -46
|
@@ -5,50 +5,44 @@ const types_1 = require("../types");
|
|
|
5
5
|
// Contract for the `amount` config field:
|
|
6
6
|
// A floating-point number in the MAJOR currency unit (e.g. 99.99 USD,
|
|
7
7
|
// 9999 JPY). Individual line items use the same `unitAmount` semantics.
|
|
8
|
-
//
|
|
9
|
-
//
|
|
10
|
-
//
|
|
11
|
-
//
|
|
12
|
-
// `
|
|
13
|
-
// `
|
|
14
|
-
//
|
|
15
|
-
//
|
|
16
|
-
//
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
//
|
|
45
|
-
//
|
|
46
|
-
// `Build Payment Redirect URLs And Metadata` script emits root-relative paths
|
|
47
|
-
// (e.g. `/order-details/ORD-42`) because at build time it has no way to know
|
|
48
|
-
// the live host. Absolutize them here using the request's base URL, which
|
|
49
|
-
// the api-route generator already stores on `context.__baseUrl`
|
|
50
|
-
// ("http://localhost:3001", "https://example.com", …). Leave fully-qualified
|
|
51
|
-
// URLs untouched so callers can override with an external URL when needed.
|
|
8
|
+
// Each provider's driver converts to its own representation — callers must
|
|
9
|
+
// NOT pre-convert to minor units.
|
|
10
|
+
//
|
|
11
|
+
// The provider work itself lives in the store's payment drivers
|
|
12
|
+
// (`utils/payments/drivers/<id>.js`, see `src/payments`), reached through the
|
|
13
|
+
// `__paymentDrivers` binding every route running this node declares. The
|
|
14
|
+
// handler owns what every provider shares: the redirect URLs, the metadata,
|
|
15
|
+
// the answer shape and the refusal of a provider the store has no driver for.
|
|
16
|
+
// An order may already have a checkout open with the provider (the buyer
|
|
17
|
+
// left it, then came back through "Continue payment"). With
|
|
18
|
+
// \`previousAttempt\` — the reference the store recorded for that checkout —
|
|
19
|
+
// the node asks the provider about it before opening another: one the buyer
|
|
20
|
+
// can still pay is reopened instead (\`attemptOutcome: 'reused'\`), one already
|
|
21
|
+
// paid or being paid opens nothing (\`'in-progress'\`, and the buyer is sent
|
|
22
|
+
// to where a finished payment lands), and only one that can take no more
|
|
23
|
+
// money gives way to a new checkout (\`'created'\`). Two open checkouts are
|
|
24
|
+
// how one order gets paid twice.
|
|
25
|
+
//
|
|
26
|
+
// An order that recorded no checkout names itself instead (\`lookupOrderId\`,
|
|
27
|
+
// \`lookupPlacedAt\`): the provider is searched for the pages its placing
|
|
28
|
+
// opened, and they are closed before another opens (see
|
|
29
|
+
// \`core.closeOrderCheckouts\`). One the provider cannot close is reopened and
|
|
30
|
+
// answered as \`'adopted'\`, to be recorded like a new one.
|
|
31
|
+
//
|
|
32
|
+
// \`deferRedirect\` answers with the page instead of sending the buyer there,
|
|
33
|
+
// so the steps after this node can record the checkout first; a navigation
|
|
34
|
+
// step then opens \`redirectUrl\`.
|
|
35
|
+
//
|
|
36
|
+
// \`reportRefusal\` answers a provider that refused to open the checkout as
|
|
37
|
+
// the node's result (\`refused: 'true'\`, the provider's own words in
|
|
38
|
+
// \`refusal\`) instead of ending the run with a 400, so the steps after it can
|
|
39
|
+
// give back what the order held and tell the buyer why. Every answer then
|
|
40
|
+
// names the provider and says whether it refused.
|
|
41
|
+
// Stripe, PayPal and every other provider reject relative paths for the
|
|
42
|
+
// return URLs. The place-order script emits root-relative paths (e.g.
|
|
43
|
+
// `/order-details/ORD-42`) because at build time it cannot know the live host,
|
|
44
|
+
// so they are absolutized against the request's base URL
|
|
45
|
+
// (`context.__baseUrl`). Fully-qualified URLs pass through untouched.
|
|
52
46
|
function toAbsoluteUrl(url, baseUrl) {
|
|
53
47
|
if (!url) {
|
|
54
48
|
return url;
|
|
@@ -63,372 +57,245 @@ function toAbsoluteUrl(url, baseUrl) {
|
|
|
63
57
|
const base = String(baseUrl).replace(/\/+$/, '');
|
|
64
58
|
return str.startsWith('/') ? base + str : base + '/' + str;
|
|
65
59
|
}
|
|
60
|
+
// The provider sends the buyer to these pages after paying, so they must stay
|
|
61
|
+
// on this store: a URL on another origin (or one that does not parse) becomes
|
|
62
|
+
// the store's home page. Without a base URL nothing can be compared, and the
|
|
63
|
+
// URL is left as it is.
|
|
64
|
+
function toStoreUrl(url, baseUrl) {
|
|
65
|
+
if (!url || !baseUrl) {
|
|
66
|
+
return url;
|
|
67
|
+
}
|
|
68
|
+
try {
|
|
69
|
+
const origin = new URL(baseUrl).origin;
|
|
70
|
+
return new URL(url, origin + '/').origin === origin ? url : origin + '/';
|
|
71
|
+
}
|
|
72
|
+
catch (_e) {
|
|
73
|
+
return String(baseUrl).replace(/\/+$/, '') + '/';
|
|
74
|
+
}
|
|
75
|
+
}
|
|
66
76
|
async function payment_charge_user(config, _context) {
|
|
67
|
-
|
|
68
|
-
const
|
|
77
|
+
// A workflow that names no provider has always meant Stripe.
|
|
78
|
+
const providerType = String(config.providerType || config.provider || config.providerId || 'stripe')
|
|
79
|
+
.trim()
|
|
80
|
+
.toLowerCase();
|
|
69
81
|
const currency = config.currency || 'usd';
|
|
82
|
+
// 'payment' (the default) opens a one-time checkout; 'subscription' opens
|
|
83
|
+
// the provider's recurring checkout for ONE plan — `amount` is then what
|
|
84
|
+
// every cycle bills, `recurringInterval` / `recurringIntervalCount` the
|
|
85
|
+
// cycle, `trialDays` the free days before the first charge, and `planId`
|
|
86
|
+
// the plan `payment-ensure-subscription-plan` returned.
|
|
87
|
+
const mode = String(config.mode || 'payment').toLowerCase() === 'subscription' ? 'subscription' : 'payment';
|
|
70
88
|
const baseUrl = String((_context && _context.__baseUrl) || '');
|
|
71
89
|
// The buyer comes back from the provider's hosted page to the language they
|
|
72
90
|
// checked out in: a site-relative return path gets the run's locale prefix
|
|
73
91
|
// (the segment route reads it off the client context) before it is
|
|
74
|
-
// absolutized
|
|
92
|
+
// absolutized. A page on another site is never a return page (see
|
|
93
|
+
// `toStoreUrl`).
|
|
75
94
|
const runLocale = _context && _context.__locale;
|
|
76
|
-
const successUrl = toAbsoluteUrl(__workflowUtils.localizeHref(config.successUrl || '', runLocale), baseUrl);
|
|
77
|
-
const cancelUrl = toAbsoluteUrl(__workflowUtils.localizeHref(config.cancelUrl || '', runLocale), baseUrl);
|
|
78
|
-
|
|
79
|
-
const lineItems = config.lineItems;
|
|
80
|
-
let parsedMetadata;
|
|
95
|
+
const successUrl = toStoreUrl(toAbsoluteUrl(__workflowUtils.localizeHref(config.successUrl || '', runLocale), baseUrl), baseUrl);
|
|
96
|
+
const cancelUrl = toStoreUrl(toAbsoluteUrl(__workflowUtils.localizeHref(config.cancelUrl || '', runLocale), baseUrl), baseUrl);
|
|
97
|
+
let metadata;
|
|
81
98
|
if (config.metadata) {
|
|
82
99
|
try {
|
|
83
|
-
|
|
84
|
-
typeof config.metadata === 'string' ? JSON.parse(config.metadata) : config.metadata;
|
|
100
|
+
metadata = typeof config.metadata === 'string' ? JSON.parse(config.metadata) : config.metadata;
|
|
85
101
|
}
|
|
86
102
|
catch (_e) {
|
|
87
|
-
|
|
103
|
+
metadata = undefined;
|
|
88
104
|
}
|
|
89
105
|
}
|
|
106
|
+
const driver = typeof __paymentDrivers !== 'undefined' && __paymentDrivers
|
|
107
|
+
? __paymentDrivers.get(providerType)
|
|
108
|
+
: null;
|
|
109
|
+
const previousAttempt = String(config.previousAttempt || '').trim();
|
|
110
|
+
const lookupOrderId = String(config.lookupOrderId || '').trim();
|
|
111
|
+
const deferRedirect = config.deferRedirect === true || config.deferRedirect === 'true';
|
|
112
|
+
const reportRefusal = config.reportRefusal === true || config.reportRefusal === 'true';
|
|
113
|
+
let attemptOutcome = 'created';
|
|
114
|
+
let adoptedAttempt = '';
|
|
90
115
|
let result;
|
|
91
|
-
if (
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
//
|
|
97
|
-
//
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
return {
|
|
108
|
-
__earlyResponse: {
|
|
109
|
-
status: 400,
|
|
110
|
-
headers: { 'Content-Type': 'application/json' },
|
|
111
|
-
body: { success: false, error: result.error, provider: providerType },
|
|
112
|
-
},
|
|
113
|
-
};
|
|
114
|
-
}
|
|
115
|
-
return result;
|
|
116
|
-
}
|
|
117
|
-
// Converts a major-unit amount (e.g. 99.99 USD) into Stripe's expected
|
|
118
|
-
// smallest-unit integer. Zero-decimal currencies pass through rounded;
|
|
119
|
-
// three-decimal currencies multiply by 1000; everything else multiplies by
|
|
120
|
-
// 100. Always returns a safe non-negative integer.
|
|
121
|
-
//
|
|
122
|
-
// The currency lists are declared LOCAL to this function rather than as
|
|
123
|
-
// shared top-level consts. `generateHandler()` below assembles the final
|
|
124
|
-
// handler by calling `.toString()` on several functions independently and
|
|
125
|
-
// concatenating the source; a top-level const is fine in an unminified
|
|
126
|
-
// build, but when this package itself is bundled + minified by a consumer
|
|
127
|
-
// (e.g. teleport-gui's browser packer, built with webpack/Terser), the
|
|
128
|
-
// minifier is free to rename the top-level const's declaration — nothing
|
|
129
|
-
// in the bundle calls it by name, only this runtime `.toString()` read
|
|
130
|
-
// does, which is invisible to the minifier. `toStripeMinorUnits.toString()`
|
|
131
|
-
// would then embed a reference to a name (e.g. a mangled `Oo`) that is
|
|
132
|
-
// never declared anywhere in the generated workflow segment file, throwing
|
|
133
|
-
// "<mangled name> is not defined" the first time a Stripe charge runs.
|
|
134
|
-
// Declaring the lists inside the function keeps the declaration and every
|
|
135
|
-
// reference to it in the SAME `.toString()` snapshot, so a consistent
|
|
136
|
-
// rename by the minifier can never separate them. See `resolveProviderSecret`
|
|
137
|
-
// above for the same class of bug with the `process` global.
|
|
138
|
-
function toStripeMinorUnits(major, currency) {
|
|
139
|
-
const zeroDecimalCurrencies = [
|
|
140
|
-
'BIF',
|
|
141
|
-
'CLP',
|
|
142
|
-
'DJF',
|
|
143
|
-
'GNF',
|
|
144
|
-
'JPY',
|
|
145
|
-
'KMF',
|
|
146
|
-
'KRW',
|
|
147
|
-
'MGA',
|
|
148
|
-
'PYG',
|
|
149
|
-
'RWF',
|
|
150
|
-
'UGX',
|
|
151
|
-
'VND',
|
|
152
|
-
'VUV',
|
|
153
|
-
'XAF',
|
|
154
|
-
'XOF',
|
|
155
|
-
'XPF',
|
|
156
|
-
];
|
|
157
|
-
// Currencies where the smallest unit is 1/1000 of the major unit. Stripe
|
|
158
|
-
// expects amounts in the smallest unit (e.g. 1.500 JOD -> 1500).
|
|
159
|
-
const threeDecimalCurrencies = ['BHD', 'IQD', 'JOD', 'KWD', 'LYD', 'OMR', 'TND'];
|
|
160
|
-
const amt = Number(major);
|
|
161
|
-
if (!isFinite(amt) || amt <= 0) {
|
|
162
|
-
return 0;
|
|
163
|
-
}
|
|
164
|
-
const upper = String(currency || '').toUpperCase();
|
|
165
|
-
if (zeroDecimalCurrencies.indexOf(upper) >= 0) {
|
|
166
|
-
return Math.round(amt);
|
|
167
|
-
}
|
|
168
|
-
if (threeDecimalCurrencies.indexOf(upper) >= 0) {
|
|
169
|
-
return Math.round(amt * 1000);
|
|
170
|
-
}
|
|
171
|
-
return Math.round(amt * 100);
|
|
172
|
-
}
|
|
173
|
-
async function chargeWithStripe(_config, currency, amount, successUrl, cancelUrl, description, lineItems, metadata) {
|
|
174
|
-
const secretKey = resolveProviderSecret(['STRIPE_SECRET_KEY', 'CONFIGURATION_STRIPE_SECRET_KEY', 'STRIPE_TEST_KEY'], 'CONFIGURATION_STRIPE_SECRET_KEY');
|
|
175
|
-
if (!secretKey) {
|
|
176
|
-
return { checkoutUrl: '', sessionId: '', error: 'STRIPE_SECRET_KEY is not configured' };
|
|
177
|
-
}
|
|
178
|
-
try {
|
|
179
|
-
// Use webpack's `__non_webpack_require__` when present (the GUI bundles this
|
|
180
|
-
// handler through webpack, which rewrites a bare `require` into the
|
|
181
|
-
// browser-only `__webpack_require__`). Falls back to the real `require` in
|
|
182
|
-
// the plain tsc/dist build. See webpack-runtime-globals.d.ts.
|
|
183
|
-
const nodeRequire = typeof __non_webpack_require__ !== 'undefined' ? __non_webpack_require__ : require;
|
|
184
|
-
const Stripe = nodeRequire('stripe');
|
|
185
|
-
const stripe = new Stripe(secretKey);
|
|
186
|
-
// `payment_method_types` is intentionally omitted so Stripe uses Dynamic
|
|
187
|
-
// Payment Methods — the checkout surfaces every method the merchant enabled
|
|
188
|
-
// in their Stripe Dashboard (card, Apple Pay, Google Pay, Link, …) based on
|
|
189
|
-
// the shopper's device/eligibility. Pinning `['card']` would suppress that.
|
|
190
|
-
// (Stripe Checkout Sessions don't accept `automatic_payment_methods`; the
|
|
191
|
-
// documented way to opt into Dynamic Payment Methods is to omit the list.)
|
|
192
|
-
const sessionParams = {
|
|
193
|
-
mode: 'payment',
|
|
194
|
-
success_url: successUrl || undefined,
|
|
195
|
-
cancel_url: cancelUrl || undefined,
|
|
196
|
-
};
|
|
197
|
-
if (lineItems && Array.isArray(lineItems) && lineItems.length > 0) {
|
|
198
|
-
sessionParams.line_items = lineItems.map(function (item) {
|
|
199
|
-
return {
|
|
200
|
-
price_data: {
|
|
201
|
-
currency,
|
|
202
|
-
product_data: { name: item.name || 'Item' },
|
|
203
|
-
unit_amount: toStripeMinorUnits(item.unitAmount, currency),
|
|
204
|
-
},
|
|
205
|
-
quantity: Number(item.quantity) || 1,
|
|
206
|
-
};
|
|
116
|
+
if (driver &&
|
|
117
|
+
!previousAttempt &&
|
|
118
|
+
lookupOrderId &&
|
|
119
|
+
__paymentDrivers.core &&
|
|
120
|
+
typeof __paymentDrivers.core.closeOrderCheckouts === 'function') {
|
|
121
|
+
// An order that recorded no checkout (placed before the store recorded
|
|
122
|
+
// them, or one whose record failed): the pages the provider finds for it
|
|
123
|
+
// are closed first. One that took the money, or is taking it, opens
|
|
124
|
+
// nothing; one the provider cannot close is reopened and recorded
|
|
125
|
+
// ('adopted'); one that cannot even be found (PayPal is not searchable)
|
|
126
|
+
// is waited out.
|
|
127
|
+
let earlier;
|
|
128
|
+
try {
|
|
129
|
+
earlier = await __paymentDrivers.core.closeOrderCheckouts(driver, {
|
|
130
|
+
orderId: lookupOrderId,
|
|
131
|
+
placedAt: String(config.lookupPlacedAt || '').trim(),
|
|
207
132
|
});
|
|
208
133
|
}
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
{
|
|
212
|
-
price_data: {
|
|
213
|
-
currency,
|
|
214
|
-
product_data: { name: description },
|
|
215
|
-
unit_amount: toStripeMinorUnits(amount, currency),
|
|
216
|
-
},
|
|
217
|
-
quantity: 1,
|
|
218
|
-
},
|
|
219
|
-
];
|
|
134
|
+
catch (err) {
|
|
135
|
+
earlier = { outcome: '', error: err.message };
|
|
220
136
|
}
|
|
221
|
-
|
|
222
|
-
|
|
137
|
+
const found = String((earlier && earlier.outcome) || '');
|
|
138
|
+
if (!found) {
|
|
139
|
+
result = {
|
|
140
|
+
checkoutUrl: '',
|
|
141
|
+
sessionId: '',
|
|
142
|
+
error: String((earlier && earlier.error) || 'The earlier payment could not be checked.'),
|
|
143
|
+
};
|
|
144
|
+
}
|
|
145
|
+
else if (found === 'paid' || found === 'confirming') {
|
|
146
|
+
attemptOutcome = 'in-progress';
|
|
147
|
+
result = { checkoutUrl: '', sessionId: '' };
|
|
148
|
+
}
|
|
149
|
+
else if (found === 'open' && earlier.checkoutUrl && earlier.reference) {
|
|
150
|
+
attemptOutcome = 'adopted';
|
|
151
|
+
adoptedAttempt = String(earlier.reference);
|
|
152
|
+
result = { checkoutUrl: String(earlier.checkoutUrl), sessionId: adoptedAttempt };
|
|
153
|
+
}
|
|
154
|
+
else if (found === 'open') {
|
|
155
|
+
const until = new Date(String(earlier.openUntil || ''));
|
|
156
|
+
result = {
|
|
157
|
+
checkoutUrl: '',
|
|
158
|
+
sessionId: '',
|
|
159
|
+
error: 'The payment page this order opened earlier may still take a payment' +
|
|
160
|
+
(isFinite(until.getTime())
|
|
161
|
+
? ' until ' + until.toISOString().slice(0, 16).replace('T', ' ') + ' UTC'
|
|
162
|
+
: '') +
|
|
163
|
+
'. Finish paying there, or try again after that.',
|
|
164
|
+
};
|
|
223
165
|
}
|
|
224
|
-
const session = await stripe.checkout.sessions.create(sessionParams);
|
|
225
|
-
// __redirectUrl signals the client-side workflow runtime to
|
|
226
|
-
// navigate the browser to Stripe's hosted checkout page.
|
|
227
|
-
// Without it, payment-charge-user returns __terminal but the
|
|
228
|
-
// user is left stuck on the originating page (e.g. /checkout)
|
|
229
|
-
// with the loading button never resetting — Stripe's
|
|
230
|
-
// payment.created webhook never fires because the buyer never
|
|
231
|
-
// sees the payment form. See runtime.js for the redirect step.
|
|
232
|
-
const checkoutUrl = session.url || '';
|
|
233
|
-
return {
|
|
234
|
-
checkoutUrl,
|
|
235
|
-
sessionId: session.id || '',
|
|
236
|
-
__terminal: true,
|
|
237
|
-
__redirectUrl: checkoutUrl,
|
|
238
|
-
};
|
|
239
|
-
}
|
|
240
|
-
catch (err) {
|
|
241
|
-
return { checkoutUrl: '', sessionId: '', error: err.message };
|
|
242
166
|
}
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
// the credentials belong to in the same call. Both PayPal environments issue
|
|
246
|
-
// client IDs starting with `A...` so the prefix tells us nothing — but the
|
|
247
|
-
// OAuth token endpoint replies with `invalid_client` when the keys belong to
|
|
248
|
-
// the other environment, which we use as a precise signal to fail over.
|
|
249
|
-
//
|
|
250
|
-
// The detected base URL is cached at module scope (`__paypalBaseUrlCache`)
|
|
251
|
-
// so the next charge in the same server instance skips the failover round
|
|
252
|
-
// trip. Cache is invalidated automatically if a cached URL ever returns
|
|
253
|
-
// `invalid_client` — covers credential rotation between envs.
|
|
254
|
-
async function paypalAuthenticate(clientId, clientSecret) {
|
|
255
|
-
const SANDBOX = 'https://api-m.sandbox.paypal.com';
|
|
256
|
-
const LIVE = 'https://api-m.paypal.com';
|
|
257
|
-
const basicAuth = 'Basic ' + globalThis.Buffer.from(clientId + ':' + clientSecret).toString('base64');
|
|
258
|
-
async function tryAuth(baseUrl) {
|
|
167
|
+
if (driver && previousAttempt && typeof driver.inspectCheckout === 'function') {
|
|
168
|
+
let earlier;
|
|
259
169
|
try {
|
|
260
|
-
|
|
261
|
-
method: 'POST',
|
|
262
|
-
headers: { Authorization: basicAuth, 'Content-Type': 'application/x-www-form-urlencoded' },
|
|
263
|
-
body: 'grant_type=client_credentials',
|
|
264
|
-
});
|
|
265
|
-
const data = await res.json();
|
|
266
|
-
if (data && data.access_token) {
|
|
267
|
-
return { accessToken: data.access_token };
|
|
268
|
-
}
|
|
269
|
-
// PayPal's documented error code for "credentials don't match this env".
|
|
270
|
-
const isInvalidClient = data && data.error === 'invalid_client';
|
|
271
|
-
return {
|
|
272
|
-
invalidClient: isInvalidClient,
|
|
273
|
-
errorMessage: (data && (data.error_description || data.error)) || 'HTTP ' + res.status,
|
|
274
|
-
};
|
|
170
|
+
earlier = await driver.inspectCheckout({ reference: previousAttempt });
|
|
275
171
|
}
|
|
276
|
-
catch (
|
|
277
|
-
|
|
172
|
+
catch (err) {
|
|
173
|
+
earlier = { error: err.message };
|
|
278
174
|
}
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
const r = await tryAuth(cached);
|
|
285
|
-
if (r.accessToken) {
|
|
286
|
-
return { baseUrl: cached, accessToken: r.accessToken };
|
|
175
|
+
const state = String((earlier && earlier.state) || '');
|
|
176
|
+
if (earlier && typeof earlier.error === 'string' && earlier.error) {
|
|
177
|
+
// Opening another checkout while the provider cannot say what became of
|
|
178
|
+
// this one could take the money twice: the buyer tries again instead.
|
|
179
|
+
result = { checkoutUrl: '', sessionId: '', error: earlier.error };
|
|
287
180
|
}
|
|
288
|
-
if (
|
|
289
|
-
|
|
290
|
-
|
|
181
|
+
else if (state === 'open' && earlier.checkoutUrl) {
|
|
182
|
+
attemptOutcome = 'reused';
|
|
183
|
+
result = { checkoutUrl: String(earlier.checkoutUrl), sessionId: previousAttempt };
|
|
184
|
+
}
|
|
185
|
+
else if (state === 'paid' || state === 'confirming') {
|
|
186
|
+
attemptOutcome = 'in-progress';
|
|
187
|
+
result = { checkoutUrl: '', sessionId: previousAttempt };
|
|
291
188
|
}
|
|
292
|
-
;
|
|
293
|
-
globalThis.__paypalBaseUrlCache = undefined;
|
|
294
|
-
}
|
|
295
|
-
// Detection: sandbox first (safer default — most dev setups). On
|
|
296
|
-
// invalid_client try live. Anything else (network/server error) is real
|
|
297
|
-
// and worth surfacing immediately so it doesn't get masked by a successful
|
|
298
|
-
// live call against keys that belong to a different sandbox account.
|
|
299
|
-
const sandboxResult = await tryAuth(SANDBOX);
|
|
300
|
-
if (sandboxResult.accessToken) {
|
|
301
|
-
;
|
|
302
|
-
globalThis.__paypalBaseUrlCache = SANDBOX;
|
|
303
|
-
return { baseUrl: SANDBOX, accessToken: sandboxResult.accessToken };
|
|
304
|
-
}
|
|
305
|
-
if (!sandboxResult.invalidClient) {
|
|
306
|
-
return { error: 'PayPal authentication failed: ' + sandboxResult.errorMessage };
|
|
307
|
-
}
|
|
308
|
-
const liveResult = await tryAuth(LIVE);
|
|
309
|
-
if (liveResult.accessToken) {
|
|
310
|
-
;
|
|
311
|
-
globalThis.__paypalBaseUrlCache = LIVE;
|
|
312
|
-
return { baseUrl: LIVE, accessToken: liveResult.accessToken };
|
|
313
|
-
}
|
|
314
|
-
// Both environments rejected the credentials.
|
|
315
|
-
return {
|
|
316
|
-
error: 'PayPal authentication failed: credentials are not valid for either sandbox or live (' +
|
|
317
|
-
(liveResult.errorMessage || 'invalid_client') +
|
|
318
|
-
'). Verify CONFIGURATION_PAYPAL_CLIENT_ID and CONFIGURATION_PAYPAL_CLIENT_SECRET in .env match a single PayPal app.',
|
|
319
|
-
};
|
|
320
|
-
}
|
|
321
|
-
async function chargeWithPaypal(_config, currency, amount, successUrl, cancelUrl, description, metadata) {
|
|
322
|
-
const clientId = resolveProviderSecret(['PAYPAL_CLIENT_ID', 'CONFIGURATION_PAYPAL_CLIENT_ID'], 'CONFIGURATION_PAYPAL_CLIENT_ID');
|
|
323
|
-
const clientSecret = resolveProviderSecret(['PAYPAL_CLIENT_SECRET', 'CONFIGURATION_PAYPAL_CLIENT_SECRET'], 'CONFIGURATION_PAYPAL_CLIENT_SECRET');
|
|
324
|
-
if (!clientId || !clientSecret) {
|
|
325
|
-
return { checkoutUrl: '', sessionId: '', error: 'PayPal credentials are not configured' };
|
|
326
189
|
}
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
190
|
+
if (!result && !driver) {
|
|
191
|
+
// A provider the store carries no driver for: refusing is the only honest
|
|
192
|
+
// answer — charging through another provider would take the money with
|
|
193
|
+
// keys the merchant never meant for this checkout.
|
|
194
|
+
result = {
|
|
332
195
|
checkoutUrl: '',
|
|
333
196
|
sessionId: '',
|
|
334
|
-
error: '
|
|
197
|
+
error: 'Payment provider "' + providerType + '" is not supported by this store.',
|
|
335
198
|
};
|
|
336
199
|
}
|
|
337
|
-
|
|
338
|
-
const
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
return safe.toFixed(2);
|
|
355
|
-
}
|
|
356
|
-
const orderPayload = {
|
|
357
|
-
intent: 'CAPTURE',
|
|
358
|
-
purchase_units: [
|
|
359
|
-
{
|
|
360
|
-
amount: {
|
|
361
|
-
currency_code: currency.toUpperCase(),
|
|
362
|
-
value: fmtPaypalMajor(Number(amount), currency),
|
|
363
|
-
},
|
|
364
|
-
description: description || undefined,
|
|
365
|
-
},
|
|
366
|
-
],
|
|
367
|
-
application_context: {
|
|
368
|
-
return_url: successUrl || undefined,
|
|
369
|
-
cancel_url: cancelUrl || undefined,
|
|
370
|
-
},
|
|
200
|
+
else if (!result) {
|
|
201
|
+
const input = {
|
|
202
|
+
amount: config.amount,
|
|
203
|
+
currency,
|
|
204
|
+
description: config.description || 'Payment',
|
|
205
|
+
lineItems: config.lineItems,
|
|
206
|
+
successUrl,
|
|
207
|
+
cancelUrl,
|
|
208
|
+
metadata,
|
|
209
|
+
customerEmail: config.customerEmail,
|
|
210
|
+
baseUrl,
|
|
211
|
+
recurringInterval: config.recurringInterval,
|
|
212
|
+
recurringIntervalCount: config.recurringIntervalCount,
|
|
213
|
+
trialDays: config.trialDays,
|
|
214
|
+
amountDue: config.amountDue,
|
|
215
|
+
planId: config.planId,
|
|
216
|
+
previousAttempt,
|
|
371
217
|
};
|
|
372
|
-
|
|
373
|
-
|
|
218
|
+
try {
|
|
219
|
+
result =
|
|
220
|
+
mode === 'subscription'
|
|
221
|
+
? await driver.createSubscriptionCheckout(input)
|
|
222
|
+
: await driver.createCheckout(input);
|
|
374
223
|
}
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
224
|
+
catch (err) {
|
|
225
|
+
result = { checkoutUrl: '', sessionId: '', error: err.message };
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
// Provider-side errors (bad keys, invalid request, wrong currency, etc.)
|
|
229
|
+
// are user-actionable configuration problems, not 500s. Surfacing them as
|
|
230
|
+
// 400 with the provider's own message lets the checkout page render an
|
|
231
|
+
// actionable toast instead of a generic "Workflow segment error" 500. The
|
|
232
|
+
// segment runtime forwards `__earlyResponse.status` / `body` straight to the
|
|
233
|
+
// HTTP response.
|
|
234
|
+
if (result && typeof result.error === 'string' && result.error) {
|
|
235
|
+
if (reportRefusal) {
|
|
236
|
+
// Never under \`error\`: the runtime ends a run on a node that answers one.
|
|
385
237
|
return {
|
|
238
|
+
refused: 'true',
|
|
239
|
+
refusal: result.error,
|
|
240
|
+
provider: providerType,
|
|
386
241
|
checkoutUrl: '',
|
|
387
242
|
sessionId: '',
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
243
|
+
attemptRef: '',
|
|
244
|
+
attemptOutcome: '',
|
|
245
|
+
redirectUrl: '',
|
|
391
246
|
};
|
|
392
247
|
}
|
|
393
|
-
const approveLink = orderData.links &&
|
|
394
|
-
orderData.links.find(function (l) {
|
|
395
|
-
return l.rel === 'approve';
|
|
396
|
-
});
|
|
397
|
-
const approveUrl = approveLink ? approveLink.href : '';
|
|
398
248
|
return {
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
__redirectUrl: approveUrl,
|
|
249
|
+
__earlyResponse: {
|
|
250
|
+
status: 400,
|
|
251
|
+
headers: { 'Content-Type': 'application/json' },
|
|
252
|
+
body: { success: false, error: result.error, provider: providerType },
|
|
253
|
+
},
|
|
405
254
|
};
|
|
406
255
|
}
|
|
407
|
-
|
|
408
|
-
|
|
256
|
+
const checkoutUrl = String((result && result.checkoutUrl) || '');
|
|
257
|
+
const sessionId = String((result && result.sessionId) || '');
|
|
258
|
+
const answer = {
|
|
259
|
+
checkoutUrl,
|
|
260
|
+
sessionId,
|
|
261
|
+
// What the store records for this checkout: the provider's reference, or
|
|
262
|
+
// more where a driver needs it to reopen the page (Square: order and link).
|
|
263
|
+
attemptRef: attemptOutcome === 'created'
|
|
264
|
+
? String((result && result.attemptRef) || sessionId)
|
|
265
|
+
: adoptedAttempt || previousAttempt,
|
|
266
|
+
attemptOutcome,
|
|
267
|
+
redirectUrl: attemptOutcome === 'in-progress' ? successUrl : checkoutUrl,
|
|
268
|
+
};
|
|
269
|
+
if (reportRefusal) {
|
|
270
|
+
answer.refused = 'false';
|
|
271
|
+
answer.refusal = '';
|
|
272
|
+
answer.provider = providerType;
|
|
273
|
+
}
|
|
274
|
+
if (mode === 'subscription') {
|
|
275
|
+
// Known at once for a provider that creates the subscription before the
|
|
276
|
+
// buyer approves it (PayPal, Razorpay); '' where the webhook reports it.
|
|
277
|
+
answer.providerSubscriptionId = String((result && result.providerSubscriptionId) || '');
|
|
278
|
+
}
|
|
279
|
+
if (deferRedirect) {
|
|
280
|
+
return answer;
|
|
409
281
|
}
|
|
282
|
+
// __redirectUrl signals the client-side workflow runtime to navigate the
|
|
283
|
+
// browser to the provider's hosted page; without it the buyer is left on the
|
|
284
|
+
// checkout page with the button spinning (see runtime.js).
|
|
285
|
+
answer.__terminal = true;
|
|
286
|
+
answer.__redirectUrl = answer.redirectUrl;
|
|
287
|
+
return answer;
|
|
410
288
|
}
|
|
411
289
|
exports.paymentChargeUser = {
|
|
412
290
|
nodeType: 'payment-charge-user',
|
|
413
291
|
executionEnv: 'server',
|
|
414
292
|
isTerminal: true,
|
|
415
|
-
dependencies: {
|
|
416
|
-
stripe: '^14.0.0',
|
|
417
|
-
},
|
|
418
293
|
generateHandler() {
|
|
419
294
|
return ((0, types_1.handlerToString)(payment_charge_user) +
|
|
420
|
-
'\n' +
|
|
421
|
-
resolveProviderSecret.toString() +
|
|
422
295
|
'\n' +
|
|
423
296
|
toAbsoluteUrl.toString() +
|
|
424
297
|
'\n' +
|
|
425
|
-
|
|
426
|
-
'\n' +
|
|
427
|
-
chargeWithStripe.toString() +
|
|
428
|
-
'\n' +
|
|
429
|
-
paypalAuthenticate.toString() +
|
|
430
|
-
'\n' +
|
|
431
|
-
chargeWithPaypal.toString());
|
|
298
|
+
toStoreUrl.toString());
|
|
432
299
|
},
|
|
433
300
|
};
|
|
434
301
|
//# sourceMappingURL=payment-charge-user.js.map
|