@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
|
@@ -13,6 +13,8 @@ import {
|
|
|
13
13
|
redactServerNodeConfig,
|
|
14
14
|
} from './segment-splitter'
|
|
15
15
|
import { isFireAndForgetSegment } from './await-result'
|
|
16
|
+
import { collectSegmentStateKeys } from './segment-context-needs'
|
|
17
|
+
import { ADMIN_CUSTOM_NODES_MODULE, collectAdminModuleCustomNodeIds } from './custom-node-modules'
|
|
16
18
|
import {
|
|
17
19
|
generateServerSegmentAPIRoute,
|
|
18
20
|
generateStreamingServerSegmentAPIRoute,
|
|
@@ -25,6 +27,14 @@ import {
|
|
|
25
27
|
hasStreamingAINode,
|
|
26
28
|
} from './api-route-generator'
|
|
27
29
|
import { generateWorkflowAuthHelperFile } from './workflow-auth-generator'
|
|
30
|
+
import {
|
|
31
|
+
generateSubscriberAccessHelperModule,
|
|
32
|
+
generateSubscriberAccessRoute,
|
|
33
|
+
hasSubscriberOnlyPages,
|
|
34
|
+
resolveCustomProductPageRoutes,
|
|
35
|
+
resolveProductDetailsRoute,
|
|
36
|
+
resolveSubscriptionFallbackRoute,
|
|
37
|
+
} from './subscriber-access-route-generator'
|
|
28
38
|
import { collectSecrets, collectSecretReferenceEnvNames } from './secret-collector'
|
|
29
39
|
import {
|
|
30
40
|
collectUsedNodeTypes,
|
|
@@ -33,11 +43,9 @@ import {
|
|
|
33
43
|
} from './graph-utils'
|
|
34
44
|
import { nodeRegistry } from './nodes'
|
|
35
45
|
import { resolveHandlerEntryName } from './nodes/types'
|
|
36
|
-
import {
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
generateSharedRuntimeUtilsCode,
|
|
40
|
-
} from './executor-generator'
|
|
46
|
+
import { generateClientRuntimeCode, generateSharedRuntimeUtilsCode } from './executor-generator'
|
|
47
|
+
import { generateServerRuntimeCode } from './server-runtime-code'
|
|
48
|
+
import { buildSegmentTrust } from './segment-trust'
|
|
41
49
|
import {
|
|
42
50
|
generateRealtimeServerHelperCode,
|
|
43
51
|
generateRealtimeClientCode,
|
|
@@ -63,9 +71,17 @@ import {
|
|
|
63
71
|
} from './auth-generator'
|
|
64
72
|
import { generateInvoiceFiles, resolveInvoiceDataSource } from './invoice'
|
|
65
73
|
import { ensureSentEmailLogModule, hasEmailSendingNodeType } from './sent-email-log'
|
|
74
|
+
import { ensureWebhookDeliveryLeaseModule } from './webhook-delivery-lease'
|
|
66
75
|
import { ensureEmailLocaleModule, resolveEmailLocaleConfig } from './email-locale'
|
|
67
76
|
import { workflowUtilsImportLine, workflowUtilsRequireLine } from './workflow-utils-alias'
|
|
68
77
|
import { generateWebhookFiles } from './webhook-generator'
|
|
78
|
+
import {
|
|
79
|
+
ensurePaymentDriversModule,
|
|
80
|
+
isPaymentWebhookConfig,
|
|
81
|
+
readWebhookPaymentProvider,
|
|
82
|
+
resolveStorePaymentDriverIds,
|
|
83
|
+
} from './payments'
|
|
84
|
+
import type { PaymentDriverId } from './payments/payment-drivers-scope'
|
|
69
85
|
import { needsDataAPIRoute, generateDataAPIRoute } from './data-api-route-generator'
|
|
70
86
|
import {
|
|
71
87
|
generateAccountDeleteRoute,
|
|
@@ -88,15 +104,18 @@ import { parameterizeAllWorkflowRawSql } from './raw-sql-param-binding'
|
|
|
88
104
|
// so it prefers the table that stores credentials (an email/login column AND a
|
|
89
105
|
// password column), then a conventionally-named users table, then the first
|
|
90
106
|
// non-auxiliary table.
|
|
91
|
-
const resolveAuthUsersTableName = (
|
|
107
|
+
export const resolveAuthUsersTableName = (
|
|
92
108
|
authentication:
|
|
93
109
|
| { enabled?: boolean; tables?: Record<string, Array<{ name?: string }>> }
|
|
94
110
|
| undefined
|
|
95
111
|
): string | undefined => {
|
|
96
|
-
if (!authentication?.enabled
|
|
112
|
+
if (!authentication?.enabled) {
|
|
97
113
|
return undefined
|
|
98
114
|
}
|
|
99
|
-
|
|
115
|
+
// No declared tables still means the auth options' own `users` table, which
|
|
116
|
+
// is where the session's role is read from — leaving it unguarded would let
|
|
117
|
+
// a browser write that role.
|
|
118
|
+
const tables = authentication.tables || {}
|
|
100
119
|
const names = Object.keys(tables)
|
|
101
120
|
if (names.length === 0) {
|
|
102
121
|
return 'users'
|
|
@@ -292,6 +311,20 @@ export class NextWorkflowProjectPlugin implements ProjectPlugin {
|
|
|
292
311
|
}
|
|
293
312
|
}
|
|
294
313
|
|
|
314
|
+
// Every app with server routes carries an app secret, with authentication
|
|
315
|
+
// or without: it keys the signatures on server results relayed between
|
|
316
|
+
// workflow steps and the internal-call token, and it is the credential
|
|
317
|
+
// server code presents to its own data, invoice and notification routes.
|
|
318
|
+
// Keyed from '' those are values anyone can compute, so the runtime
|
|
319
|
+
// refuses them all without one. The deploy worker replaces this default
|
|
320
|
+
// with the project's own secret.
|
|
321
|
+
if (uidl.globals && hasServerRoutes(uidl)) {
|
|
322
|
+
uidl.globals.env = uidl.globals.env || {}
|
|
323
|
+
if (!uidl.globals.env.NEXTAUTH_SECRET) {
|
|
324
|
+
uidl.globals.env.NEXTAUTH_SECRET = randomSecretHex()
|
|
325
|
+
}
|
|
326
|
+
}
|
|
327
|
+
|
|
295
328
|
if (uidl.globals?.env) {
|
|
296
329
|
const oauthCredentialKeys = collectOAuthCredentialEnvKeys(uidl.authentication)
|
|
297
330
|
for (const key of Object.keys(uidl.globals.env)) {
|
|
@@ -341,6 +374,7 @@ export class NextWorkflowProjectPlugin implements ProjectPlugin {
|
|
|
341
374
|
}
|
|
342
375
|
}
|
|
343
376
|
|
|
377
|
+
ensurePaymentDriversModule(structure, resolveStorePaymentDriverIds(uidl, []))
|
|
344
378
|
generateWebhookFiles(structure, uidl.invoiceSettings)
|
|
345
379
|
|
|
346
380
|
if (hasAuthentication) {
|
|
@@ -359,6 +393,10 @@ export class NextWorkflowProjectPlugin implements ProjectPlugin {
|
|
|
359
393
|
ensureSentEmailLogModule(structure)
|
|
360
394
|
}
|
|
361
395
|
|
|
396
|
+
// Routes that run a payment node or verify a payment webhook require the
|
|
397
|
+
// store's payment drivers (see generatePaymentDriversPreamble).
|
|
398
|
+
ensurePaymentDriversModule(structure, resolveStorePaymentDriverIds(uidl, usedNodeTypes))
|
|
399
|
+
|
|
362
400
|
files.set('workflow-runtime-utils', {
|
|
363
401
|
path: ['utils', 'workflows'],
|
|
364
402
|
files: [
|
|
@@ -399,7 +437,8 @@ export class NextWorkflowProjectPlugin implements ProjectPlugin {
|
|
|
399
437
|
|
|
400
438
|
// Set true the moment we emit ANY route that bakes an auth policy, so the
|
|
401
439
|
// shared guard file is emitted iff at least one route actually imports it.
|
|
402
|
-
const routeHasPolicy = (p: any): boolean =>
|
|
440
|
+
const routeHasPolicy = (p: any): boolean =>
|
|
441
|
+
!!p && (p.requiresAuth || p.userScoped || p.serverOnly)
|
|
403
442
|
let anyGuardedRouteEmitted = false
|
|
404
443
|
|
|
405
444
|
// Build server segment info for custom nodes so they can call server-side API routes
|
|
@@ -415,14 +454,26 @@ export class NextWorkflowProjectPlugin implements ProjectPlugin {
|
|
|
415
454
|
const cnServerSegments = cnSegments.filter((s) => s.env === 'server')
|
|
416
455
|
if (cnServerSegments.length > 0) {
|
|
417
456
|
customNodeServerUrls[cnId] = {}
|
|
457
|
+
// The same list, in the same order, the custom node's runner hands its
|
|
458
|
+
// inner custom-js nodes as `params`.
|
|
459
|
+
const cnGraph = { nodes: cn.nodes || [], edges: cn.edges || [], segments: cnSegments }
|
|
418
460
|
for (const seg of cnServerSegments) {
|
|
461
|
+
const routeOptions = {
|
|
462
|
+
customNodeIds: (cn.nodes || []).map((n: any) => n.id),
|
|
463
|
+
trust: buildSegmentTrust(seg, cnGraph),
|
|
464
|
+
}
|
|
419
465
|
const isStreaming = hasStreamingAINode(seg)
|
|
420
466
|
if (routeHasPolicy(cn.protection)) {
|
|
421
467
|
anyGuardedRouteEmitted = true
|
|
422
468
|
}
|
|
423
469
|
const apiContent = isStreaming
|
|
424
|
-
? generateStreamingServerSegmentAPIRoute(
|
|
425
|
-
|
|
470
|
+
? generateStreamingServerSegmentAPIRoute(
|
|
471
|
+
seg,
|
|
472
|
+
cn.name || cnId,
|
|
473
|
+
cn.protection,
|
|
474
|
+
routeOptions
|
|
475
|
+
)
|
|
476
|
+
: generateServerSegmentAPIRoute(seg, cn.name || cnId, cn.protection, routeOptions)
|
|
426
477
|
const fileName = getAPIRouteFileName(cnId, seg.id, cn.name || cnId)
|
|
427
478
|
customNodeServerUrls[cnId][seg.id] = `/api/workflows/${fileName}`
|
|
428
479
|
files.set(`workflow-api-cn-${cnId}-${seg.id}`, {
|
|
@@ -439,7 +490,15 @@ export class NextWorkflowProjectPlugin implements ProjectPlugin {
|
|
|
439
490
|
}
|
|
440
491
|
}
|
|
441
492
|
|
|
442
|
-
|
|
493
|
+
// Nodes only the admin pages call get their own module, which only the
|
|
494
|
+
// pages that call them import (see custom-node-modules.ts).
|
|
495
|
+
const adminModuleIds = collectAdminModuleCustomNodeIds(customNodes)
|
|
496
|
+
const customNodeCode =
|
|
497
|
+
adminModuleIds.size > 0
|
|
498
|
+
? this.generateCustomNodesFile(customNodes, customNodeServerUrls, {
|
|
499
|
+
exclude: adminModuleIds,
|
|
500
|
+
})
|
|
501
|
+
: this.generateCustomNodesFile(customNodes, customNodeServerUrls)
|
|
443
502
|
files.set('workflow-custom-nodes', {
|
|
444
503
|
path: ['utils', 'workflows'],
|
|
445
504
|
files: [
|
|
@@ -450,6 +509,20 @@ export class NextWorkflowProjectPlugin implements ProjectPlugin {
|
|
|
450
509
|
},
|
|
451
510
|
],
|
|
452
511
|
})
|
|
512
|
+
if (adminModuleIds.size > 0) {
|
|
513
|
+
files.set('workflow-custom-nodes-admin', {
|
|
514
|
+
path: ['utils', 'workflows'],
|
|
515
|
+
files: [
|
|
516
|
+
{
|
|
517
|
+
name: ADMIN_CUSTOM_NODES_MODULE,
|
|
518
|
+
fileType: FileType.JS,
|
|
519
|
+
content: this.generateCustomNodesFile(customNodes, customNodeServerUrls, {
|
|
520
|
+
only: adminModuleIds,
|
|
521
|
+
}),
|
|
522
|
+
},
|
|
523
|
+
],
|
|
524
|
+
})
|
|
525
|
+
}
|
|
453
526
|
}
|
|
454
527
|
|
|
455
528
|
let hasServerSegments = Object.keys(customNodeServerUrls).length > 0
|
|
@@ -457,10 +530,22 @@ export class NextWorkflowProjectPlugin implements ProjectPlugin {
|
|
|
457
530
|
// Track which payment providers are already handled by a workflow-driven
|
|
458
531
|
// webhook (event-webhook-received + webhookConfig) so we can skip the
|
|
459
532
|
// legacy hard-coded webhook emission for those providers below.
|
|
460
|
-
const webhookProvidersOwnedByWorkflows = new Set<
|
|
533
|
+
const webhookProvidersOwnedByWorkflows = new Set<PaymentDriverId>()
|
|
461
534
|
|
|
462
535
|
for (const workflow of Object.values(allWorkflows) as any[]) {
|
|
463
536
|
if (workflow.trigger.type === 'event-cron-triggered') {
|
|
537
|
+
// A cron route runs its whole graph on the server through the same
|
|
538
|
+
// runtime and handler file a server segment uses, so an app whose only
|
|
539
|
+
// server work is a cron still needs them.
|
|
540
|
+
hasServerSegments = true
|
|
541
|
+
// The route refuses every request not signed with this key; the deploy
|
|
542
|
+
// fills it in (see cron-request-verification.ts).
|
|
543
|
+
if (!uidl.globals.env) {
|
|
544
|
+
uidl.globals.env = {}
|
|
545
|
+
}
|
|
546
|
+
if (!uidl.globals.env.TELEPORT_CRON_SECRET) {
|
|
547
|
+
uidl.globals.env.TELEPORT_CRON_SECRET = ''
|
|
548
|
+
}
|
|
464
549
|
const cronContent = generateCronAPIRoute(workflow, customNodes)
|
|
465
550
|
const cronFileName = getCronRouteFileName(workflow)
|
|
466
551
|
files.set(`workflow-cron-${workflow.id}`, {
|
|
@@ -492,18 +577,15 @@ export class NextWorkflowProjectPlugin implements ProjectPlugin {
|
|
|
492
577
|
],
|
|
493
578
|
})
|
|
494
579
|
|
|
495
|
-
//
|
|
496
|
-
//
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
const urlPath = (workflow.webhookConfig.urlPath || '').toLowerCase()
|
|
501
|
-
const sigAlgorithm = (workflow.webhookConfig.signatureAlgorithm || '').toLowerCase()
|
|
502
|
-
if (urlPath.includes('stripe') || sigAlgorithm.includes('stripe')) {
|
|
503
|
-
webhookProvidersOwnedByWorkflows.add('stripe')
|
|
580
|
+
// The provider this webhook handles, so the legacy hard-coded emission
|
|
581
|
+
// (webhook-generator.ts) is skipped for it.
|
|
582
|
+
const ownedProvider = readWebhookPaymentProvider(workflow.webhookConfig)
|
|
583
|
+
if (ownedProvider) {
|
|
584
|
+
webhookProvidersOwnedByWorkflows.add(ownedProvider)
|
|
504
585
|
}
|
|
505
|
-
|
|
506
|
-
|
|
586
|
+
// A payment webhook runs one delivery at a time; its route requires the lease.
|
|
587
|
+
if (isPaymentWebhookConfig(workflow.webhookConfig)) {
|
|
588
|
+
ensureWebhookDeliveryLeaseModule(structure)
|
|
507
589
|
}
|
|
508
590
|
|
|
509
591
|
// signatureSecret may arrive as either a bare env-var-name string or a
|
|
@@ -543,6 +625,7 @@ export class NextWorkflowProjectPlugin implements ProjectPlugin {
|
|
|
543
625
|
|
|
544
626
|
const segments = splitIntoSegments(workflow)
|
|
545
627
|
const serverSegments = segments.filter((s) => s.env === 'server')
|
|
628
|
+
const workflowGraph = { nodes: workflow.nodes || [], edges: workflow.edges || [], segments }
|
|
546
629
|
|
|
547
630
|
for (const serverSeg of serverSegments) {
|
|
548
631
|
hasServerSegments = true
|
|
@@ -550,9 +633,20 @@ export class NextWorkflowProjectPlugin implements ProjectPlugin {
|
|
|
550
633
|
if (routeHasPolicy(workflow.protection)) {
|
|
551
634
|
anyGuardedRouteEmitted = true
|
|
552
635
|
}
|
|
636
|
+
const routeOptions = { trust: buildSegmentTrust(serverSeg, workflowGraph) }
|
|
553
637
|
const apiContent = isStreaming
|
|
554
|
-
? generateStreamingServerSegmentAPIRoute(
|
|
555
|
-
|
|
638
|
+
? generateStreamingServerSegmentAPIRoute(
|
|
639
|
+
serverSeg,
|
|
640
|
+
workflow.name,
|
|
641
|
+
workflow.protection,
|
|
642
|
+
routeOptions
|
|
643
|
+
)
|
|
644
|
+
: generateServerSegmentAPIRoute(
|
|
645
|
+
serverSeg,
|
|
646
|
+
workflow.name,
|
|
647
|
+
workflow.protection,
|
|
648
|
+
routeOptions
|
|
649
|
+
)
|
|
556
650
|
const fileName = getAPIRouteFileName(workflow.id, serverSeg.id, workflow.name)
|
|
557
651
|
|
|
558
652
|
files.set(`workflow-api-${workflow.id}-${serverSeg.id}`, {
|
|
@@ -591,7 +685,11 @@ export class NextWorkflowProjectPlugin implements ProjectPlugin {
|
|
|
591
685
|
{
|
|
592
686
|
name: 'workflow-auth',
|
|
593
687
|
fileType: FileType.JS,
|
|
594
|
-
content: generateWorkflowAuthHelperFile(
|
|
688
|
+
content: generateWorkflowAuthHelperFile({
|
|
689
|
+
withSubscriberAccess:
|
|
690
|
+
uidl.authentication?.enabled === true &&
|
|
691
|
+
hasSubscriberOnlyPages(uidl.authentication),
|
|
692
|
+
}),
|
|
595
693
|
},
|
|
596
694
|
],
|
|
597
695
|
})
|
|
@@ -832,7 +930,7 @@ export class NextWorkflowProjectPlugin implements ProjectPlugin {
|
|
|
832
930
|
)
|
|
833
931
|
|
|
834
932
|
if (globalWorkflows.length > 0) {
|
|
835
|
-
const globalWorkflowCode = this.generateGlobalWorkflowsHook(globalWorkflows)
|
|
933
|
+
const globalWorkflowCode = this.generateGlobalWorkflowsHook(globalWorkflows, customNodes)
|
|
836
934
|
files.set('workflow-global-hook', {
|
|
837
935
|
path: ['utils', 'workflows'],
|
|
838
936
|
files: [
|
|
@@ -1261,13 +1359,25 @@ ${entries}
|
|
|
1261
1359
|
return map
|
|
1262
1360
|
}
|
|
1263
1361
|
|
|
1362
|
+
/**
|
|
1363
|
+
* `emit.only`: the nodes of `custom-nodes-admin.js`, whose registry starts
|
|
1364
|
+
* from the shared module's so their nested calls still resolve.
|
|
1365
|
+
* `emit.exclude`: the nodes left out of the shared module. Every node is
|
|
1366
|
+
* emitted when `emit` is absent. `customNodes` is always the full set, so
|
|
1367
|
+
* nested lookups (segment state keys) see every node.
|
|
1368
|
+
*/
|
|
1264
1369
|
private generateCustomNodesFile(
|
|
1265
1370
|
customNodes: Record<string, any>,
|
|
1266
|
-
customNodeServerUrls: Record<string, Record<string, string
|
|
1371
|
+
customNodeServerUrls: Record<string, Record<string, string>>,
|
|
1372
|
+
emit?: { only?: Set<string>; exclude?: Set<string> }
|
|
1267
1373
|
): string {
|
|
1268
1374
|
const functions: string[] = []
|
|
1375
|
+
const emitted = Object.keys(customNodes).filter(
|
|
1376
|
+
(id) => (!emit?.only || emit.only.has(id)) && !(emit?.exclude && emit.exclude.has(id))
|
|
1377
|
+
)
|
|
1269
1378
|
|
|
1270
|
-
for (const
|
|
1379
|
+
for (const id of emitted) {
|
|
1380
|
+
const cn = customNodes[id]
|
|
1271
1381
|
const safeId = id.replace(/[^a-zA-Z0-9]/g, '_')
|
|
1272
1382
|
// SECURITY: the custom-nodes file ships to the browser (imported as
|
|
1273
1383
|
// `utils/workflows/custom-nodes`). Redact each server node's config down
|
|
@@ -1319,6 +1429,11 @@ ${entries}
|
|
|
1319
1429
|
// Every node in this segment runs fire-and-forget — dispatch it and
|
|
1320
1430
|
// carry on instead of waiting for the database round trip.
|
|
1321
1431
|
fireAndForget: isFireAndForgetSegment(s),
|
|
1432
|
+
// The page state an inner server segment may read — the outer
|
|
1433
|
+
// segment carried it this far (see segment-context-needs).
|
|
1434
|
+
...(s.env === 'server'
|
|
1435
|
+
? { stateKeys: collectSegmentStateKeys(s.nodes, customNodes) }
|
|
1436
|
+
: {}),
|
|
1322
1437
|
nodes: s.nodes.map((n) => ({
|
|
1323
1438
|
id: n.id,
|
|
1324
1439
|
type: n.type,
|
|
@@ -1420,7 +1535,7 @@ async function customNode_${safeId}(outerContext, parameters, nodeHandlers) {
|
|
|
1420
1535
|
// already moved past this point.
|
|
1421
1536
|
__utils.registerPendingNodePromise(
|
|
1422
1537
|
context,
|
|
1423
|
-
__runtime.callServerSegment(segUrl, context).catch(function(__ffErr) {
|
|
1538
|
+
__runtime.callServerSegment(segUrl, context, seg.stateKeys).catch(function(__ffErr) {
|
|
1424
1539
|
console.error('[workflow] Segment "' + seg.id + '" failed (not awaited):', __ffErr);
|
|
1425
1540
|
})
|
|
1426
1541
|
);
|
|
@@ -1434,10 +1549,10 @@ async function customNode_${safeId}(outerContext, parameters, nodeHandlers) {
|
|
|
1434
1549
|
continue;
|
|
1435
1550
|
}
|
|
1436
1551
|
if (seg.hasStreamingAI) {
|
|
1437
|
-
var streamHandled = await __runtime.callStreamingServerSegment(segUrl, context, streamingInfo, nodes, edges, nodeHandlers, wfConfig, executionId);
|
|
1552
|
+
var streamHandled = await __runtime.callStreamingServerSegment(segUrl, context, streamingInfo, nodes, edges, nodeHandlers, wfConfig, executionId, seg.stateKeys);
|
|
1438
1553
|
Object.assign(handledNodeIds, streamHandled);
|
|
1439
1554
|
} else {
|
|
1440
|
-
var serverResults = await __runtime.callServerSegment(segUrl, context);
|
|
1555
|
+
var serverResults = await __runtime.callServerSegment(segUrl, context, seg.stateKeys);
|
|
1441
1556
|
__runtime.mergeServerResults(context, serverResults);
|
|
1442
1557
|
// Propagate non-taken if-statement branches from this server
|
|
1443
1558
|
// segment into subsequent segments. Iterate every if-statement
|
|
@@ -1581,18 +1696,25 @@ async function customNode_${safeId}(outerContext, parameters, nodeHandlers) {
|
|
|
1581
1696
|
}
|
|
1582
1697
|
}
|
|
1583
1698
|
|
|
1584
|
-
const hasAnyServerSegments =
|
|
1585
|
-
|
|
1699
|
+
const hasAnyServerSegments = emitted.some(
|
|
1700
|
+
(id) => !!customNodeServerUrls[id] && Object.keys(customNodeServerUrls[id]).length > 0
|
|
1701
|
+
)
|
|
1702
|
+
const registryEntries = emitted
|
|
1586
1703
|
.map(
|
|
1587
1704
|
(id) => `__customNodeRegistry['${id}'] = customNode_${id.replace(/[^a-zA-Z0-9]/g, '_')};`
|
|
1588
1705
|
)
|
|
1589
1706
|
.join('\n')
|
|
1707
|
+
const registryStart = emit?.only
|
|
1708
|
+
? `// Loaded only by the pages that call these nodes. The registry starts from
|
|
1709
|
+
// the shared module's, so a nested call to a shared node still resolves.
|
|
1710
|
+
var __customNodeRegistry = Object.assign({}, require('./custom-nodes'));`
|
|
1711
|
+
: 'var __customNodeRegistry = {};'
|
|
1590
1712
|
|
|
1591
1713
|
return `// Auto-generated custom workflow nodes
|
|
1592
1714
|
var __utils = require('./runtime-utils');
|
|
1593
1715
|
${hasAnyServerSegments ? "var __runtime = require('./runtime');" : ''}
|
|
1594
1716
|
|
|
1595
|
-
|
|
1717
|
+
${registryStart}
|
|
1596
1718
|
${functions.join('\n')}
|
|
1597
1719
|
|
|
1598
1720
|
${registryEntries}
|
|
@@ -1715,12 +1837,43 @@ module.exports = __customNodeRegistry;
|
|
|
1715
1837
|
],
|
|
1716
1838
|
})
|
|
1717
1839
|
|
|
1840
|
+
// Subscriber-only pages: the entitlement query the middleware asks for
|
|
1841
|
+
// through pages/api/auth/subscriber-access.js, and that the workflow-route
|
|
1842
|
+
// guard requires directly. Emitted only when a page actually needs it.
|
|
1843
|
+
if (hasSubscriberOnlyPages(auth)) {
|
|
1844
|
+
files.set('auth-subscriber-access-helper', {
|
|
1845
|
+
path: ['utils', 'auth'],
|
|
1846
|
+
files: [
|
|
1847
|
+
{
|
|
1848
|
+
name: 'subscriber-access',
|
|
1849
|
+
fileType: FileType.JS,
|
|
1850
|
+
content: generateSubscriberAccessHelperModule({
|
|
1851
|
+
productDetails: resolveProductDetailsRoute(uidl),
|
|
1852
|
+
productPages: resolveCustomProductPageRoutes(uidl),
|
|
1853
|
+
}),
|
|
1854
|
+
},
|
|
1855
|
+
],
|
|
1856
|
+
})
|
|
1857
|
+
files.set('auth-subscriber-access-route', {
|
|
1858
|
+
path: ['pages', 'api', 'auth'],
|
|
1859
|
+
files: [
|
|
1860
|
+
{
|
|
1861
|
+
name: 'subscriber-access',
|
|
1862
|
+
fileType: FileType.JS,
|
|
1863
|
+
content: generateSubscriberAccessRoute(),
|
|
1864
|
+
},
|
|
1865
|
+
],
|
|
1866
|
+
})
|
|
1867
|
+
}
|
|
1868
|
+
|
|
1718
1869
|
const hasProtectedRoutes =
|
|
1719
1870
|
(auth.pageProtection && Object.keys(auth.pageProtection).length > 0) ||
|
|
1720
1871
|
(auth.folderProtection && Object.keys(auth.folderProtection).length > 0)
|
|
1721
1872
|
|
|
1722
1873
|
if (hasProtectedRoutes) {
|
|
1723
|
-
const middlewareCode = generateMiddlewareFile(auth
|
|
1874
|
+
const middlewareCode = generateMiddlewareFile(auth, {
|
|
1875
|
+
subscriptionFallbackRoute: resolveSubscriptionFallbackRoute(uidl),
|
|
1876
|
+
})
|
|
1724
1877
|
files.set('auth-middleware', {
|
|
1725
1878
|
path: [],
|
|
1726
1879
|
files: [
|
|
@@ -1853,7 +2006,7 @@ module.exports = __customNodeRegistry;
|
|
|
1853
2006
|
appFile.content = content
|
|
1854
2007
|
}
|
|
1855
2008
|
|
|
1856
|
-
private generateGlobalWorkflowsHook(workflows: any[]): string {
|
|
2009
|
+
private generateGlobalWorkflowsHook(workflows: any[], customNodes: Record<string, any>): string {
|
|
1857
2010
|
const registrations: string[] = []
|
|
1858
2011
|
const handlerTypes = new Set<string>()
|
|
1859
2012
|
|
|
@@ -1956,7 +2109,7 @@ module.exports = __customNodeRegistry;
|
|
|
1956
2109
|
// handler as a bare sibling statement inside `useGlobalWorkflows()`. Two
|
|
1957
2110
|
// DIFFERENT node types are minified independently (each in its own
|
|
1958
2111
|
// source file), so their real declared names can coincidentally collide —
|
|
1959
|
-
// e.g. state-update-local-state and payment-
|
|
2112
|
+
// e.g. state-update-local-state and payment-refund can both
|
|
1960
2113
|
// legitimately mangle down to the same short name. Declared as siblings
|
|
1961
2114
|
// in one shared function body, the second declaration would silently
|
|
1962
2115
|
// shadow the first, so BOTH map entries end up pointing at the SAME
|
|
@@ -2010,6 +2163,9 @@ ${workflows
|
|
|
2010
2163
|
id: s.id,
|
|
2011
2164
|
env: s.env,
|
|
2012
2165
|
hasStreamingAI: hasStreamingAINode(s),
|
|
2166
|
+
...(s.env === 'server'
|
|
2167
|
+
? { stateKeys: collectSegmentStateKeys(s.nodes, customNodes) }
|
|
2168
|
+
: {}),
|
|
2013
2169
|
nodes: s.nodes.map((n: any) => ({
|
|
2014
2170
|
id: n.id,
|
|
2015
2171
|
type: n.type,
|
|
@@ -2047,9 +2203,53 @@ ${registrations.join('\n')}
|
|
|
2047
2203
|
}
|
|
2048
2204
|
}
|
|
2049
2205
|
|
|
2050
|
-
|
|
2051
|
-
|
|
2052
|
-
|
|
2206
|
+
/**
|
|
2207
|
+
* Whether the app has routes that must tell this deployment's own server code
|
|
2208
|
+
* apart from a browser: workflow steps, data routes, invoices, payment
|
|
2209
|
+
* webhooks, authentication.
|
|
2210
|
+
*/
|
|
2211
|
+
const hasServerRoutes = (uidl: ProjectUIDL): boolean =>
|
|
2212
|
+
Boolean(
|
|
2213
|
+
uidl.authentication?.enabled ||
|
|
2214
|
+
Object.keys(uidl.workflows?.workflows || {}).length > 0 ||
|
|
2215
|
+
Object.keys(uidl.workflows?.customNodes || {}).length > 0 ||
|
|
2216
|
+
Object.keys(uidl.dataSources || {}).length > 0 ||
|
|
2217
|
+
uidl.invoiceSettings?.enabled ||
|
|
2218
|
+
uidl.ecommerceSettings
|
|
2219
|
+
)
|
|
2220
|
+
|
|
2221
|
+
/**
|
|
2222
|
+
* 32 random bytes as hex. NEXTAUTH_SECRET signs every session and is the app
|
|
2223
|
+
* secret server code presents to its own routes, so its default must never be
|
|
2224
|
+
* a value anyone can read in this file: a published constant let anyone mint
|
|
2225
|
+
* an admin session, or pass as the store's own server, on any project that
|
|
2226
|
+
* shipped it. The deploy worker still replaces the line with the project's
|
|
2227
|
+
* persisted secret (it upserts `NEXTAUTH_SECRET=` whatever its value); this
|
|
2228
|
+
* only decides what an exported or locally generated project starts with.
|
|
2229
|
+
* Web Crypto where the generator runs in a browser (the editor), Node's crypto
|
|
2230
|
+
* module otherwise.
|
|
2231
|
+
*/
|
|
2232
|
+
const randomSecretHex = (): string => {
|
|
2233
|
+
const webCrypto = (globalThis as { crypto?: { getRandomValues?: (a: Uint8Array) => Uint8Array } })
|
|
2234
|
+
.crypto
|
|
2235
|
+
if (webCrypto && typeof webCrypto.getRandomValues === 'function') {
|
|
2236
|
+
const bytes = webCrypto.getRandomValues(new Uint8Array(32))
|
|
2237
|
+
let hex = ''
|
|
2238
|
+
for (let i = 0; i < bytes.length; i++) {
|
|
2239
|
+
hex += (bytes[i] < 16 ? '0' : '') + bytes[i].toString(16)
|
|
2240
|
+
}
|
|
2241
|
+
return hex
|
|
2242
|
+
}
|
|
2243
|
+
// tslint:disable-next-line:no-var-requires
|
|
2244
|
+
return require('crypto').randomBytes(32).toString('hex')
|
|
2245
|
+
}
|
|
2246
|
+
|
|
2247
|
+
/** The literal default earlier generations wrote; the deploy worker treats it as unset. */
|
|
2248
|
+
const LEGACY_NEXTAUTH_SECRET = 'CHANGE_ME_TO_A_RANDOM_SECRET'
|
|
2249
|
+
|
|
2250
|
+
const AUTH_ENV_DEFAULTS: Record<string, () => string> = {
|
|
2251
|
+
NEXTAUTH_URL: () => 'http://localhost:3000',
|
|
2252
|
+
NEXTAUTH_SECRET: randomSecretHex,
|
|
2053
2253
|
}
|
|
2054
2254
|
|
|
2055
2255
|
// The two stable CMS env keys (teleport-gui's CMS_ENV_URL / CMS_ENV_ACCESS_TOKEN).
|
|
@@ -2115,11 +2315,14 @@ export function resolveAuthEnvValue(
|
|
|
2115
2315
|
// (or still-unresolved placeholder) auth key to its local default keeps the
|
|
2116
2316
|
// value a valid origin; the deploy worker and the runtime request-derivation
|
|
2117
2317
|
// (`absolutizeNextAuthUrl`) override it with the real one in production.
|
|
2318
|
+
// The constant earlier generations shipped as the secret, carried over from an
|
|
2319
|
+
// on-disk `.env` by the standalone harness, is no secret at all: replaced too.
|
|
2320
|
+
const isPublishedSecret = key === 'NEXTAUTH_SECRET' && value === LEGACY_NEXTAUTH_SECRET
|
|
2118
2321
|
if (
|
|
2119
2322
|
Object.prototype.hasOwnProperty.call(AUTH_ENV_DEFAULTS, key) &&
|
|
2120
|
-
(isSecretPlaceholder || isBlank)
|
|
2323
|
+
(isSecretPlaceholder || isBlank || isPublishedSecret)
|
|
2121
2324
|
) {
|
|
2122
|
-
return AUTH_ENV_DEFAULTS[key]
|
|
2325
|
+
return AUTH_ENV_DEFAULTS[key]()
|
|
2123
2326
|
}
|
|
2124
2327
|
|
|
2125
2328
|
if (isSecretPlaceholder) {
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"payment-cancel-plan.d.ts","sourceRoot":"","sources":["../../../../src/nodes/payment/payment-cancel-plan.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAmB,MAAM,UAAU,CAAA;AA0BhE,eAAO,MAAM,iBAAiB,EAAE,oBAM/B,CAAA"}
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.paymentCancelPlan = void 0;
|
|
4
|
-
const types_1 = require("../types");
|
|
5
|
-
async function payment_cancel_plan(config, context) {
|
|
6
|
-
const subscriptionId = config.subscriptionId;
|
|
7
|
-
const secretKey = config.secretKey;
|
|
8
|
-
try {
|
|
9
|
-
const response = await fetch('https://api.stripe.com/v1/subscriptions/' + subscriptionId, {
|
|
10
|
-
method: 'DELETE',
|
|
11
|
-
headers: {
|
|
12
|
-
Authorization: 'Bearer ' + secretKey,
|
|
13
|
-
'Content-Type': 'application/x-www-form-urlencoded',
|
|
14
|
-
},
|
|
15
|
-
});
|
|
16
|
-
const data = await response.json();
|
|
17
|
-
if (!response.ok) {
|
|
18
|
-
return { success: false, error: data.error ? data.error.message : 'Cancel failed' };
|
|
19
|
-
}
|
|
20
|
-
return { success: true };
|
|
21
|
-
}
|
|
22
|
-
catch (err) {
|
|
23
|
-
return { success: false, error: err.message };
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
exports.paymentCancelPlan = {
|
|
27
|
-
nodeType: 'payment-cancel-plan',
|
|
28
|
-
executionEnv: 'server',
|
|
29
|
-
generateHandler() {
|
|
30
|
-
return (0, types_1.handlerToString)(payment_cancel_plan);
|
|
31
|
-
},
|
|
32
|
-
};
|
|
33
|
-
//# sourceMappingURL=payment-cancel-plan.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"payment-cancel-plan.js","sourceRoot":"","sources":["../../../../src/nodes/payment/payment-cancel-plan.ts"],"names":[],"mappings":";;;AAAA,oCAAgE;AAEhE,KAAK,UAAU,mBAAmB,CAAC,MAAW,EAAE,OAAgC;IAC9E,MAAM,cAAc,GAAG,MAAM,CAAC,cAAc,CAAA;IAC5C,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAA;IAElC,IAAI;QACF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,0CAA0C,GAAG,cAAc,EAAE;YACxF,MAAM,EAAE,QAAQ;YAChB,OAAO,EAAE;gBACP,aAAa,EAAE,SAAS,GAAG,SAAS;gBACpC,cAAc,EAAE,mCAAmC;aACpD;SACF,CAAC,CAAA;QAEF,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;QAElC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE;YAChB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,CAAA;SACpF;QAED,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;KACzB;IAAC,OAAO,GAAY,EAAE;QACrB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAG,GAAa,CAAC,OAAO,EAAE,CAAA;KACzD;AACH,CAAC;AACY,QAAA,iBAAiB,GAAyB;IACrD,QAAQ,EAAE,qBAAqB;IAC/B,YAAY,EAAE,QAAQ;IACtB,eAAe;QACb,OAAO,IAAA,uBAAe,EAAC,mBAAmB,CAAC,CAAA;IAC7C,CAAC;CACF,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"payment-create-subscription.d.ts","sourceRoot":"","sources":["../../../../src/nodes/payment/payment-create-subscription.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAmB,MAAM,UAAU,CAAA;AAmChE,eAAO,MAAM,yBAAyB,EAAE,oBAMvC,CAAA"}
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.paymentCreateSubscription = void 0;
|
|
4
|
-
const types_1 = require("../types");
|
|
5
|
-
async function payment_create_subscription(config, context) {
|
|
6
|
-
const customerId = config.customerId;
|
|
7
|
-
const planId = config.planId;
|
|
8
|
-
const secretKey = config.secretKey;
|
|
9
|
-
try {
|
|
10
|
-
const params = new URLSearchParams();
|
|
11
|
-
params.append('customer', customerId);
|
|
12
|
-
params.append('items[0][price]', planId);
|
|
13
|
-
const response = await fetch('https://api.stripe.com/v1/subscriptions', {
|
|
14
|
-
method: 'POST',
|
|
15
|
-
headers: {
|
|
16
|
-
Authorization: 'Bearer ' + secretKey,
|
|
17
|
-
'Content-Type': 'application/x-www-form-urlencoded',
|
|
18
|
-
},
|
|
19
|
-
body: params.toString(),
|
|
20
|
-
});
|
|
21
|
-
const data = await response.json();
|
|
22
|
-
if (!response.ok) {
|
|
23
|
-
return {
|
|
24
|
-
subscriptionId: '',
|
|
25
|
-
error: data.error ? data.error.message : 'Create subscription failed',
|
|
26
|
-
};
|
|
27
|
-
}
|
|
28
|
-
return { subscriptionId: data.id || '' };
|
|
29
|
-
}
|
|
30
|
-
catch (err) {
|
|
31
|
-
return { subscriptionId: '', error: err.message };
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
exports.paymentCreateSubscription = {
|
|
35
|
-
nodeType: 'payment-create-subscription',
|
|
36
|
-
executionEnv: 'server',
|
|
37
|
-
generateHandler() {
|
|
38
|
-
return (0, types_1.handlerToString)(payment_create_subscription);
|
|
39
|
-
},
|
|
40
|
-
};
|
|
41
|
-
//# sourceMappingURL=payment-create-subscription.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"payment-create-subscription.js","sourceRoot":"","sources":["../../../../src/nodes/payment/payment-create-subscription.ts"],"names":[],"mappings":";;;AAAA,oCAAgE;AAEhE,KAAK,UAAU,2BAA2B,CAAC,MAAW,EAAE,OAAgC;IACtF,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAA;IACpC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAA;IAC5B,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAA;IAElC,IAAI;QACF,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAA;QACpC,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,UAAU,CAAC,CAAA;QACrC,MAAM,CAAC,MAAM,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAA;QAExC,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,yCAAyC,EAAE;YACtE,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,aAAa,EAAE,SAAS,GAAG,SAAS;gBACpC,cAAc,EAAE,mCAAmC;aACpD;YACD,IAAI,EAAE,MAAM,CAAC,QAAQ,EAAE;SACxB,CAAC,CAAA;QAEF,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;QAElC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE;YAChB,OAAO;gBACL,cAAc,EAAE,EAAE;gBAClB,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,4BAA4B;aACtE,CAAA;SACF;QAED,OAAO,EAAE,cAAc,EAAE,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,CAAA;KACzC;IAAC,OAAO,GAAY,EAAE;QACrB,OAAO,EAAE,cAAc,EAAE,EAAE,EAAE,KAAK,EAAG,GAAa,CAAC,OAAO,EAAE,CAAA;KAC7D;AACH,CAAC;AACY,QAAA,yBAAyB,GAAyB;IAC7D,QAAQ,EAAE,6BAA6B;IACvC,YAAY,EAAE,QAAQ;IACtB,eAAe;QACb,OAAO,IAAA,uBAAe,EAAC,2BAA2B,CAAC,CAAA;IACrD,CAAC;CACF,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"payment-subscribe-to-plan.d.ts","sourceRoot":"","sources":["../../../../src/nodes/payment/payment-subscribe-to-plan.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAmB,MAAM,UAAU,CAAA;AAuChE,eAAO,MAAM,sBAAsB,EAAE,oBAMpC,CAAA"}
|