@teleporthq/teleport-plugin-next-workflows 0.43.67 → 0.43.68

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.
Files changed (787) hide show
  1. package/__tests__/_helpers/bind-workflow-utils.ts +16 -1
  2. package/__tests__/_helpers/fake-fetch.ts +96 -0
  3. package/__tests__/_helpers/fake-stripe.ts +52 -0
  4. package/__tests__/_helpers/load-handler.ts +22 -3
  5. package/__tests__/_helpers/load-invoice-route.ts +75 -0
  6. package/__tests__/_helpers/load-payment-drivers.ts +69 -0
  7. package/__tests__/_helpers/load-server-runtime.ts +33 -0
  8. package/__tests__/_helpers/run-generated-middleware.ts +50 -9
  9. package/__tests__/admin-form-hydration-target.test.ts +39 -0
  10. package/__tests__/admin-form-row-hydration.test.ts +58 -0
  11. package/__tests__/ai-select-database-data-handler.test.ts +14 -3
  12. package/__tests__/api-route-file-name-segments.test.ts +33 -0
  13. package/__tests__/app-secret-env.test.ts +55 -0
  14. package/__tests__/auth-env-secret-preservation.test.ts +22 -3
  15. package/__tests__/auth-nextauth-url.test.ts +134 -50
  16. package/__tests__/cart-add-item-kinds.test.ts +259 -0
  17. package/__tests__/cart-add-item-line-fields.test.ts +328 -0
  18. package/__tests__/cart-availability-add-to-cart.test.ts +108 -0
  19. package/__tests__/cart-get-total-discounts.test.ts +499 -0
  20. package/__tests__/cart-get-total-product-options.test.ts +195 -0
  21. package/__tests__/cart-get-total-subscriptions.test.ts +221 -0
  22. package/__tests__/cart-price-order.test.ts +283 -0
  23. package/__tests__/cart-update-item-quantity-recurring.test.ts +75 -0
  24. package/__tests__/client-loop-current-item.test.ts +164 -0
  25. package/__tests__/cron-route-loop-custom-node.test.ts +123 -0
  26. package/__tests__/cron-route-loop-templateparams.test.ts +7 -0
  27. package/__tests__/cron-route-verification.test.ts +252 -0
  28. package/__tests__/custom-js-runtime-base-url.test.ts +64 -0
  29. package/__tests__/custom-nodes-admin-module.test.ts +310 -0
  30. package/__tests__/data-api-browser-reads.test.ts +341 -0
  31. package/__tests__/data-api-low-stock-autofire.test.ts +67 -17
  32. package/__tests__/data-api-optional-feature-columns.test.ts +240 -0
  33. package/__tests__/data-api-protected-tables.test.ts +948 -0
  34. package/__tests__/data-node-not-awaited.test.ts +7 -3
  35. package/__tests__/data-write-missing-filter.test.ts +119 -0
  36. package/__tests__/ecommerce-rewriter-product-options.test.ts +143 -0
  37. package/__tests__/email-locale-senders.test.ts +1 -1
  38. package/__tests__/file-storage-upload-picked-files.test.ts +20 -0
  39. package/__tests__/input-debounce-per-field.test.ts +141 -0
  40. package/__tests__/internal-request-headers.test.ts +7 -3
  41. package/__tests__/invoice-data-access-replace.test.ts +340 -0
  42. package/__tests__/invoice-delivery-fee.test.ts +3 -2
  43. package/__tests__/invoice-generate-hydration.test.ts +20 -12
  44. package/__tests__/invoice-order-items-settle.test.ts +51 -46
  45. package/__tests__/invoice-product-options.test.ts +177 -0
  46. package/__tests__/invoice-regenerate-route.test.ts +488 -0
  47. package/__tests__/invoice-regional-tax.test.ts +3 -2
  48. package/__tests__/invoice-reservation.test.ts +195 -0
  49. package/__tests__/invoice-route-access.test.ts +275 -0
  50. package/__tests__/invoice-self-call-origin.test.ts +117 -0
  51. package/__tests__/invoice-tender.test.ts +550 -0
  52. package/__tests__/legacy-webhook-self-calls.test.ts +187 -0
  53. package/__tests__/locale-aware-redirects.test.ts +55 -26
  54. package/__tests__/loop-collection-unwrap.test.ts +6 -1
  55. package/__tests__/middleware-subscriber-access.test.ts +269 -0
  56. package/__tests__/payment-charge-user-earlier-attempt.test.ts +267 -0
  57. package/__tests__/payment-charge-user-handler-serialization.test.ts +47 -82
  58. package/__tests__/payment-charge-user-line-descriptions.test.ts +124 -0
  59. package/__tests__/payment-charge-user-report-refusal.test.ts +105 -0
  60. package/__tests__/payment-close-checkout-node.test.ts +127 -0
  61. package/__tests__/payment-driver-close-checkout.test.ts +1163 -0
  62. package/__tests__/payment-driver-coingate.test.ts +470 -0
  63. package/__tests__/payment-driver-inspect-checkout.test.ts +648 -0
  64. package/__tests__/payment-driver-mollie.test.ts +864 -0
  65. package/__tests__/payment-driver-paddle.test.ts +870 -0
  66. package/__tests__/payment-driver-paypal-capture.test.ts +158 -0
  67. package/__tests__/payment-driver-paypal-webhook.test.ts +367 -0
  68. package/__tests__/payment-driver-razorpay.test.ts +895 -0
  69. package/__tests__/payment-driver-square.test.ts +977 -0
  70. package/__tests__/payment-driver-stripe.test.ts +267 -0
  71. package/__tests__/payment-drivers-module.test.ts +429 -0
  72. package/__tests__/payment-legacy-webhook-routes.test.ts +588 -0
  73. package/__tests__/payment-redirect-and-order-notification.test.ts +98 -39
  74. package/__tests__/payment-refund.test.ts +523 -22
  75. package/__tests__/payment-subscription-nodes.test.ts +1360 -0
  76. package/__tests__/payment-webhook-route.test.ts +523 -0
  77. package/__tests__/paypal-webhook-signature-verification.test.ts +205 -0
  78. package/__tests__/prune-context-oversized-leaf.test.ts +1 -0
  79. package/__tests__/prune-context-state-keys.test.ts +89 -0
  80. package/__tests__/push-node-handlers.test.ts +291 -0
  81. package/__tests__/route-changed-trigger.test.ts +40 -0
  82. package/__tests__/runtime-storage-upload-access.test.ts +255 -0
  83. package/__tests__/security-runtime-shadow.test.ts +103 -1
  84. package/__tests__/segment-reply-changed-keys.test.ts +146 -0
  85. package/__tests__/segment-state-keys-emission.test.ts +185 -0
  86. package/__tests__/segment-state-needs.test.ts +102 -0
  87. package/__tests__/server-segment-context-integrity.test.ts +210 -0
  88. package/__tests__/server-step-signing.test.ts +371 -0
  89. package/__tests__/session-cookie-resolver.test.ts +59 -0
  90. package/__tests__/stock-decrement-audit.test.ts +17 -0
  91. package/__tests__/subscriber-access-route.test.ts +406 -0
  92. package/__tests__/webhook-delivery-lease.test.ts +316 -0
  93. package/__tests__/workflow-auth-guard.test.ts +253 -2
  94. package/dist/cjs/admin-form-hydration.d.ts +10 -0
  95. package/dist/cjs/admin-form-hydration.d.ts.map +1 -0
  96. package/dist/cjs/admin-form-hydration.js +25 -0
  97. package/dist/cjs/admin-form-hydration.js.map +1 -0
  98. package/dist/cjs/api-route-generator.d.ts +19 -3
  99. package/dist/cjs/api-route-generator.d.ts.map +1 -1
  100. package/dist/cjs/api-route-generator.js +190 -70
  101. package/dist/cjs/api-route-generator.js.map +1 -1
  102. package/dist/cjs/auth-generator.d.ts +4 -1
  103. package/dist/cjs/auth-generator.d.ts.map +1 -1
  104. package/dist/cjs/auth-generator.js +241 -62
  105. package/dist/cjs/auth-generator.js.map +1 -1
  106. package/dist/cjs/auth-return/signed-in-destination-code.d.ts +17 -0
  107. package/dist/cjs/auth-return/signed-in-destination-code.d.ts.map +1 -0
  108. package/dist/cjs/auth-return/signed-in-destination-code.js +37 -0
  109. package/dist/cjs/auth-return/signed-in-destination-code.js.map +1 -0
  110. package/dist/cjs/cart-pricing-preamble.d.ts +12 -0
  111. package/dist/cjs/cart-pricing-preamble.d.ts.map +1 -0
  112. package/dist/cjs/cart-pricing-preamble.js +23 -0
  113. package/dist/cjs/cart-pricing-preamble.js.map +1 -0
  114. package/dist/cjs/cron-request-verification.d.ts +24 -0
  115. package/dist/cjs/cron-request-verification.d.ts.map +1 -0
  116. package/dist/cjs/cron-request-verification.js +84 -0
  117. package/dist/cjs/cron-request-verification.js.map +1 -0
  118. package/dist/cjs/custom-node-modules.d.ts +30 -0
  119. package/dist/cjs/custom-node-modules.d.ts.map +1 -0
  120. package/dist/cjs/custom-node-modules.js +90 -0
  121. package/dist/cjs/custom-node-modules.js.map +1 -0
  122. package/dist/cjs/data-api-route-generator.d.ts +27 -0
  123. package/dist/cjs/data-api-route-generator.d.ts.map +1 -1
  124. package/dist/cjs/data-api-route-generator.js +366 -29
  125. package/dist/cjs/data-api-route-generator.js.map +1 -1
  126. package/dist/cjs/ecommerce/cart-availability.d.ts.map +1 -1
  127. package/dist/cjs/ecommerce/cart-availability.js +22 -13
  128. package/dist/cjs/ecommerce/cart-availability.js.map +1 -1
  129. package/dist/cjs/ecommerce/stock-decrement.d.ts +2 -1
  130. package/dist/cjs/ecommerce/stock-decrement.d.ts.map +1 -1
  131. package/dist/cjs/ecommerce/stock-decrement.js +6 -0
  132. package/dist/cjs/ecommerce/stock-decrement.js.map +1 -1
  133. package/dist/cjs/executor-generator.d.ts +0 -1
  134. package/dist/cjs/executor-generator.d.ts.map +1 -1
  135. package/dist/cjs/executor-generator.js +213 -20
  136. package/dist/cjs/executor-generator.js.map +1 -1
  137. package/dist/cjs/index.d.ts +12 -4
  138. package/dist/cjs/index.d.ts.map +1 -1
  139. package/dist/cjs/index.js +25 -2
  140. package/dist/cjs/index.js.map +1 -1
  141. package/dist/cjs/invoice/api-routes-code.d.ts +26 -0
  142. package/dist/cjs/invoice/api-routes-code.d.ts.map +1 -1
  143. package/dist/cjs/invoice/api-routes-code.js +423 -391
  144. package/dist/cjs/invoice/api-routes-code.js.map +1 -1
  145. package/dist/cjs/invoice/data-access-code.d.ts.map +1 -1
  146. package/dist/cjs/invoice/data-access-code.js +420 -107
  147. package/dist/cjs/invoice/data-access-code.js.map +1 -1
  148. package/dist/cjs/invoice/index.d.ts.map +1 -1
  149. package/dist/cjs/invoice/index.js +24 -0
  150. package/dist/cjs/invoice/index.js.map +1 -1
  151. package/dist/cjs/invoice/invoice-assembly-code.d.ts +12 -0
  152. package/dist/cjs/invoice/invoice-assembly-code.d.ts.map +1 -0
  153. package/dist/cjs/invoice/invoice-assembly-code.js +517 -0
  154. package/dist/cjs/invoice/invoice-assembly-code.js.map +1 -0
  155. package/dist/cjs/invoice/invoice-html-code.d.ts.map +1 -1
  156. package/dist/cjs/invoice/invoice-html-code.js +111 -9
  157. package/dist/cjs/invoice/invoice-html-code.js.map +1 -1
  158. package/dist/cjs/invoice/pdf-service-client-code.d.ts.map +1 -1
  159. package/dist/cjs/invoice/pdf-service-client-code.js +3 -4
  160. package/dist/cjs/invoice/pdf-service-client-code.js.map +1 -1
  161. package/dist/cjs/nodes/account/account-login.d.ts.map +1 -1
  162. package/dist/cjs/nodes/account/account-login.js +4 -3
  163. package/dist/cjs/nodes/account/account-login.js.map +1 -1
  164. package/dist/cjs/nodes/account/account-signup.d.ts.map +1 -1
  165. package/dist/cjs/nodes/account/account-signup.js +7 -4
  166. package/dist/cjs/nodes/account/account-signup.js.map +1 -1
  167. package/dist/cjs/nodes/ai/ai-select-database-data.d.ts.map +1 -1
  168. package/dist/cjs/nodes/ai/ai-select-database-data.js +6 -1
  169. package/dist/cjs/nodes/ai/ai-select-database-data.js.map +1 -1
  170. package/dist/cjs/nodes/browser/browser-get-push-subscription.d.ts +9 -0
  171. package/dist/cjs/nodes/browser/browser-get-push-subscription.d.ts.map +1 -0
  172. package/dist/cjs/nodes/browser/browser-get-push-subscription.js +25 -0
  173. package/dist/cjs/nodes/browser/browser-get-push-subscription.js.map +1 -0
  174. package/dist/cjs/nodes/browser/browser-show-notification.d.ts +10 -0
  175. package/dist/cjs/nodes/browser/browser-show-notification.d.ts.map +1 -1
  176. package/dist/cjs/nodes/browser/browser-show-notification.js +65 -40
  177. package/dist/cjs/nodes/browser/browser-show-notification.js.map +1 -1
  178. package/dist/cjs/nodes/browser/browser-subscribe-to-push.d.ts +11 -0
  179. package/dist/cjs/nodes/browser/browser-subscribe-to-push.d.ts.map +1 -1
  180. package/dist/cjs/nodes/browser/browser-subscribe-to-push.js +21 -31
  181. package/dist/cjs/nodes/browser/browser-subscribe-to-push.js.map +1 -1
  182. package/dist/cjs/nodes/browser/browser-unsubscribe-from-push.d.ts +8 -0
  183. package/dist/cjs/nodes/browser/browser-unsubscribe-from-push.d.ts.map +1 -0
  184. package/dist/cjs/nodes/browser/browser-unsubscribe-from-push.js +24 -0
  185. package/dist/cjs/nodes/browser/browser-unsubscribe-from-push.js.map +1 -0
  186. package/dist/cjs/nodes/browser/push-api-access.d.ts +12 -0
  187. package/dist/cjs/nodes/browser/push-api-access.d.ts.map +1 -0
  188. package/dist/cjs/nodes/browser/push-api-access.js +19 -0
  189. package/dist/cjs/nodes/browser/push-api-access.js.map +1 -0
  190. package/dist/cjs/nodes/cart/cart-add-item.d.ts.map +1 -1
  191. package/dist/cjs/nodes/cart/cart-add-item.js +174 -10
  192. package/dist/cjs/nodes/cart/cart-add-item.js.map +1 -1
  193. package/dist/cjs/nodes/cart/cart-clear.d.ts.map +1 -1
  194. package/dist/cjs/nodes/cart/cart-clear.js +11 -0
  195. package/dist/cjs/nodes/cart/cart-clear.js.map +1 -1
  196. package/dist/cjs/nodes/cart/cart-get-total.d.ts.map +1 -1
  197. package/dist/cjs/nodes/cart/cart-get-total.js +260 -3
  198. package/dist/cjs/nodes/cart/cart-get-total.js.map +1 -1
  199. package/dist/cjs/nodes/cart/cart-price-order.d.ts +3 -0
  200. package/dist/cjs/nodes/cart/cart-price-order.d.ts.map +1 -0
  201. package/dist/cjs/nodes/cart/cart-price-order.js +281 -0
  202. package/dist/cjs/nodes/cart/cart-price-order.js.map +1 -0
  203. package/dist/cjs/nodes/cart/cart-update-item-quantity.d.ts.map +1 -1
  204. package/dist/cjs/nodes/cart/cart-update-item-quantity.js +7 -0
  205. package/dist/cjs/nodes/cart/cart-update-item-quantity.js.map +1 -1
  206. package/dist/cjs/nodes/data/data-count.d.ts.map +1 -1
  207. package/dist/cjs/nodes/data/data-count.js +6 -1
  208. package/dist/cjs/nodes/data/data-count.js.map +1 -1
  209. package/dist/cjs/nodes/data/data-create-item.d.ts.map +1 -1
  210. package/dist/cjs/nodes/data/data-create-item.js +11 -1
  211. package/dist/cjs/nodes/data/data-create-item.js.map +1 -1
  212. package/dist/cjs/nodes/data/data-delete-item.d.ts.map +1 -1
  213. package/dist/cjs/nodes/data/data-delete-item.js +29 -0
  214. package/dist/cjs/nodes/data/data-delete-item.js.map +1 -1
  215. package/dist/cjs/nodes/data/data-raw-query.d.ts.map +1 -1
  216. package/dist/cjs/nodes/data/data-raw-query.js +6 -1
  217. package/dist/cjs/nodes/data/data-raw-query.js.map +1 -1
  218. package/dist/cjs/nodes/data/data-select.d.ts.map +1 -1
  219. package/dist/cjs/nodes/data/data-select.js +6 -1
  220. package/dist/cjs/nodes/data/data-select.js.map +1 -1
  221. package/dist/cjs/nodes/data/data-update-item.d.ts.map +1 -1
  222. package/dist/cjs/nodes/data/data-update-item.js +29 -0
  223. package/dist/cjs/nodes/data/data-update-item.js.map +1 -1
  224. package/dist/cjs/nodes/ecommerce/ecommerce-generate-invoice.d.ts.map +1 -1
  225. package/dist/cjs/nodes/ecommerce/ecommerce-generate-invoice.js +7 -1
  226. package/dist/cjs/nodes/ecommerce/ecommerce-generate-invoice.js.map +1 -1
  227. package/dist/cjs/nodes/file-storage/file-storage-upload.d.ts.map +1 -1
  228. package/dist/cjs/nodes/file-storage/file-storage-upload.js +7 -0
  229. package/dist/cjs/nodes/file-storage/file-storage-upload.js.map +1 -1
  230. package/dist/cjs/nodes/general/general-custom-js.d.ts.map +1 -1
  231. package/dist/cjs/nodes/general/general-custom-js.js +21 -5
  232. package/dist/cjs/nodes/general/general-custom-js.js.map +1 -1
  233. package/dist/cjs/nodes/index.d.ts.map +1 -1
  234. package/dist/cjs/nodes/index.js +9 -4
  235. package/dist/cjs/nodes/index.js.map +1 -1
  236. package/dist/cjs/nodes/payment/payment-billing-portal.d.ts +3 -0
  237. package/dist/cjs/nodes/payment/payment-billing-portal.d.ts.map +1 -0
  238. package/dist/cjs/nodes/payment/payment-billing-portal.js +52 -0
  239. package/dist/cjs/nodes/payment/payment-billing-portal.js.map +1 -0
  240. package/dist/cjs/nodes/payment/payment-charge-user.d.ts.map +1 -1
  241. package/dist/cjs/nodes/payment/payment-charge-user.js +227 -360
  242. package/dist/cjs/nodes/payment/payment-charge-user.js.map +1 -1
  243. package/dist/cjs/nodes/payment/payment-close-checkout.d.ts +3 -0
  244. package/dist/cjs/nodes/payment/payment-close-checkout.d.ts.map +1 -0
  245. package/dist/cjs/nodes/payment/payment-close-checkout.js +141 -0
  246. package/dist/cjs/nodes/payment/payment-close-checkout.js.map +1 -0
  247. package/dist/cjs/nodes/payment/payment-ensure-subscription-plan.d.ts +3 -0
  248. package/dist/cjs/nodes/payment/payment-ensure-subscription-plan.d.ts.map +1 -0
  249. package/dist/cjs/nodes/payment/payment-ensure-subscription-plan.js +67 -0
  250. package/dist/cjs/nodes/payment/payment-ensure-subscription-plan.js.map +1 -0
  251. package/dist/cjs/nodes/payment/payment-manage-subscription.d.ts +3 -0
  252. package/dist/cjs/nodes/payment/payment-manage-subscription.d.ts.map +1 -0
  253. package/dist/cjs/nodes/payment/payment-manage-subscription.js +89 -0
  254. package/dist/cjs/nodes/payment/payment-manage-subscription.js.map +1 -0
  255. package/dist/cjs/nodes/payment/payment-refund.d.ts.map +1 -1
  256. package/dist/cjs/nodes/payment/payment-refund.js +50 -404
  257. package/dist/cjs/nodes/payment/payment-refund.js.map +1 -1
  258. package/dist/cjs/nodes/push/push-send-notification.d.ts +14 -0
  259. package/dist/cjs/nodes/push/push-send-notification.d.ts.map +1 -0
  260. package/dist/cjs/nodes/push/push-send-notification.js +83 -0
  261. package/dist/cjs/nodes/push/push-send-notification.js.map +1 -0
  262. package/dist/cjs/payments/drivers/coingate-driver-code.d.ts +16 -0
  263. package/dist/cjs/payments/drivers/coingate-driver-code.d.ts.map +1 -0
  264. package/dist/cjs/payments/drivers/coingate-driver-code.js +471 -0
  265. package/dist/cjs/payments/drivers/coingate-driver-code.js.map +1 -0
  266. package/dist/cjs/payments/drivers/mollie-driver-code.d.ts +16 -0
  267. package/dist/cjs/payments/drivers/mollie-driver-code.d.ts.map +1 -0
  268. package/dist/cjs/payments/drivers/mollie-driver-code.js +623 -0
  269. package/dist/cjs/payments/drivers/mollie-driver-code.js.map +1 -0
  270. package/dist/cjs/payments/drivers/paddle-driver-code.d.ts +12 -0
  271. package/dist/cjs/payments/drivers/paddle-driver-code.d.ts.map +1 -0
  272. package/dist/cjs/payments/drivers/paddle-driver-code.js +683 -0
  273. package/dist/cjs/payments/drivers/paddle-driver-code.js.map +1 -0
  274. package/dist/cjs/payments/drivers/paypal-driver-code.d.ts +12 -0
  275. package/dist/cjs/payments/drivers/paypal-driver-code.d.ts.map +1 -0
  276. package/dist/cjs/payments/drivers/paypal-driver-code.js +1261 -0
  277. package/dist/cjs/payments/drivers/paypal-driver-code.js.map +1 -0
  278. package/dist/cjs/payments/drivers/razorpay-driver-code.d.ts +12 -0
  279. package/dist/cjs/payments/drivers/razorpay-driver-code.d.ts.map +1 -0
  280. package/dist/cjs/payments/drivers/razorpay-driver-code.js +732 -0
  281. package/dist/cjs/payments/drivers/razorpay-driver-code.js.map +1 -0
  282. package/dist/cjs/payments/drivers/square-driver-code.d.ts +14 -0
  283. package/dist/cjs/payments/drivers/square-driver-code.d.ts.map +1 -0
  284. package/dist/cjs/payments/drivers/square-driver-code.js +931 -0
  285. package/dist/cjs/payments/drivers/square-driver-code.js.map +1 -0
  286. package/dist/cjs/payments/drivers/stripe-driver-code.d.ts +12 -0
  287. package/dist/cjs/payments/drivers/stripe-driver-code.d.ts.map +1 -0
  288. package/dist/cjs/payments/drivers/stripe-driver-code.js +778 -0
  289. package/dist/cjs/payments/drivers/stripe-driver-code.js.map +1 -0
  290. package/dist/cjs/payments/index.d.ts +66 -0
  291. package/dist/cjs/payments/index.d.ts.map +1 -0
  292. package/dist/cjs/payments/index.js +175 -0
  293. package/dist/cjs/payments/index.js.map +1 -0
  294. package/dist/cjs/payments/payment-core-code.d.ts +19 -0
  295. package/dist/cjs/payments/payment-core-code.d.ts.map +1 -0
  296. package/dist/cjs/payments/payment-core-code.js +422 -0
  297. package/dist/cjs/payments/payment-core-code.js.map +1 -0
  298. package/dist/cjs/payments/payment-driver-code-map.d.ts +4 -0
  299. package/dist/cjs/payments/payment-driver-code-map.d.ts.map +1 -0
  300. package/dist/cjs/payments/payment-driver-code-map.js +21 -0
  301. package/dist/cjs/payments/payment-driver-code-map.js.map +1 -0
  302. package/dist/cjs/payments/payment-drivers-scope.d.ts +35 -0
  303. package/dist/cjs/payments/payment-drivers-scope.d.ts.map +1 -0
  304. package/dist/cjs/payments/payment-drivers-scope.js +56 -0
  305. package/dist/cjs/payments/payment-drivers-scope.js.map +1 -0
  306. package/dist/cjs/payments/payment-registry-code.d.ts +8 -0
  307. package/dist/cjs/payments/payment-registry-code.d.ts.map +1 -0
  308. package/dist/cjs/payments/payment-registry-code.js +41 -0
  309. package/dist/cjs/payments/payment-registry-code.js.map +1 -0
  310. package/dist/cjs/pg-client-code.d.ts +10 -0
  311. package/dist/cjs/pg-client-code.d.ts.map +1 -1
  312. package/dist/cjs/pg-client-code.js +27 -1
  313. package/dist/cjs/pg-client-code.js.map +1 -1
  314. package/dist/cjs/runtime-storage-generator.d.ts +28 -0
  315. package/dist/cjs/runtime-storage-generator.d.ts.map +1 -1
  316. package/dist/cjs/runtime-storage-generator.js +240 -5
  317. package/dist/cjs/runtime-storage-generator.js.map +1 -1
  318. package/dist/cjs/secret-collector.d.ts.map +1 -1
  319. package/dist/cjs/secret-collector.js +8 -3
  320. package/dist/cjs/secret-collector.js.map +1 -1
  321. package/dist/cjs/security-scanner.d.ts +10 -1
  322. package/dist/cjs/security-scanner.d.ts.map +1 -1
  323. package/dist/cjs/security-scanner.js +19 -1
  324. package/dist/cjs/security-scanner.js.map +1 -1
  325. package/dist/cjs/segment-context-needs.d.ts +38 -0
  326. package/dist/cjs/segment-context-needs.d.ts.map +1 -0
  327. package/dist/cjs/segment-context-needs.js +129 -0
  328. package/dist/cjs/segment-context-needs.js.map +1 -0
  329. package/dist/cjs/segment-splitter.d.ts.map +1 -1
  330. package/dist/cjs/segment-splitter.js +6 -1
  331. package/dist/cjs/segment-splitter.js.map +1 -1
  332. package/dist/cjs/segment-trust.d.ts +50 -0
  333. package/dist/cjs/segment-trust.d.ts.map +1 -0
  334. package/dist/cjs/segment-trust.js +115 -0
  335. package/dist/cjs/segment-trust.js.map +1 -0
  336. package/dist/cjs/sent-email-log/sent-email-log-code.d.ts +19 -0
  337. package/dist/cjs/sent-email-log/sent-email-log-code.d.ts.map +1 -1
  338. package/dist/cjs/sent-email-log/sent-email-log-code.js +1 -24
  339. package/dist/cjs/sent-email-log/sent-email-log-code.js.map +1 -1
  340. package/dist/cjs/server-runtime-code.d.ts +34 -0
  341. package/dist/cjs/server-runtime-code.d.ts.map +1 -0
  342. package/dist/cjs/server-runtime-code.js +303 -0
  343. package/dist/cjs/server-runtime-code.js.map +1 -0
  344. package/dist/cjs/session-cookie-resolver.d.ts +3 -78
  345. package/dist/cjs/session-cookie-resolver.d.ts.map +1 -1
  346. package/dist/cjs/session-cookie-resolver.js +7 -276
  347. package/dist/cjs/session-cookie-resolver.js.map +1 -1
  348. package/dist/cjs/subscriber-access-route-generator.d.ts +71 -0
  349. package/dist/cjs/subscriber-access-route-generator.d.ts.map +1 -0
  350. package/dist/cjs/subscriber-access-route-generator.js +301 -0
  351. package/dist/cjs/subscriber-access-route-generator.js.map +1 -0
  352. package/dist/cjs/tsconfig.tsbuildinfo +1 -1
  353. package/dist/cjs/types.d.ts +6 -0
  354. package/dist/cjs/types.d.ts.map +1 -1
  355. package/dist/cjs/webhook-delivery-lease/index.d.ts +8 -0
  356. package/dist/cjs/webhook-delivery-lease/index.d.ts.map +1 -0
  357. package/dist/cjs/webhook-delivery-lease/index.js +41 -0
  358. package/dist/cjs/webhook-delivery-lease/index.js.map +1 -0
  359. package/dist/cjs/webhook-delivery-lease/webhook-delivery-lease-code.d.ts +26 -0
  360. package/dist/cjs/webhook-delivery-lease/webhook-delivery-lease-code.d.ts.map +1 -0
  361. package/dist/cjs/webhook-delivery-lease/webhook-delivery-lease-code.js +151 -0
  362. package/dist/cjs/webhook-delivery-lease/webhook-delivery-lease-code.js.map +1 -0
  363. package/dist/cjs/webhook-delivery-lease/webhook-delivery-lease-scope.d.ts +16 -0
  364. package/dist/cjs/webhook-delivery-lease/webhook-delivery-lease-scope.d.ts.map +1 -0
  365. package/dist/cjs/webhook-delivery-lease/webhook-delivery-lease-scope.js +19 -0
  366. package/dist/cjs/webhook-delivery-lease/webhook-delivery-lease-scope.js.map +1 -0
  367. package/dist/cjs/webhook-generator.d.ts +1 -1
  368. package/dist/cjs/webhook-generator.d.ts.map +1 -1
  369. package/dist/cjs/webhook-generator.js +342 -254
  370. package/dist/cjs/webhook-generator.js.map +1 -1
  371. package/dist/cjs/webhook-signature-verification.d.ts +17 -1
  372. package/dist/cjs/webhook-signature-verification.d.ts.map +1 -1
  373. package/dist/cjs/webhook-signature-verification.js +182 -27
  374. package/dist/cjs/webhook-signature-verification.js.map +1 -1
  375. package/dist/cjs/workflow-auth-generator.d.ts +9 -6
  376. package/dist/cjs/workflow-auth-generator.d.ts.map +1 -1
  377. package/dist/cjs/workflow-auth-generator.js +133 -29
  378. package/dist/cjs/workflow-auth-generator.js.map +1 -1
  379. package/dist/cjs/workflow-component-plugin.d.ts.map +1 -1
  380. package/dist/cjs/workflow-component-plugin.js +65 -28
  381. package/dist/cjs/workflow-component-plugin.js.map +1 -1
  382. package/dist/cjs/workflow-project-plugin.d.ts +13 -0
  383. package/dist/cjs/workflow-project-plugin.d.ts.map +1 -1
  384. package/dist/cjs/workflow-project-plugin.js +215 -65
  385. package/dist/cjs/workflow-project-plugin.js.map +1 -1
  386. package/dist/esm/admin-form-hydration.d.ts +10 -0
  387. package/dist/esm/admin-form-hydration.d.ts.map +1 -0
  388. package/dist/esm/admin-form-hydration.js +21 -0
  389. package/dist/esm/admin-form-hydration.js.map +1 -0
  390. package/dist/esm/api-route-generator.d.ts +19 -3
  391. package/dist/esm/api-route-generator.d.ts.map +1 -1
  392. package/dist/esm/api-route-generator.js +189 -70
  393. package/dist/esm/api-route-generator.js.map +1 -1
  394. package/dist/esm/auth-generator.d.ts +4 -1
  395. package/dist/esm/auth-generator.d.ts.map +1 -1
  396. package/dist/esm/auth-generator.js +241 -62
  397. package/dist/esm/auth-generator.js.map +1 -1
  398. package/dist/esm/auth-return/signed-in-destination-code.d.ts +17 -0
  399. package/dist/esm/auth-return/signed-in-destination-code.d.ts.map +1 -0
  400. package/dist/esm/auth-return/signed-in-destination-code.js +33 -0
  401. package/dist/esm/auth-return/signed-in-destination-code.js.map +1 -0
  402. package/dist/esm/cart-pricing-preamble.d.ts +12 -0
  403. package/dist/esm/cart-pricing-preamble.d.ts.map +1 -0
  404. package/dist/esm/cart-pricing-preamble.js +19 -0
  405. package/dist/esm/cart-pricing-preamble.js.map +1 -0
  406. package/dist/esm/cron-request-verification.d.ts +24 -0
  407. package/dist/esm/cron-request-verification.d.ts.map +1 -0
  408. package/dist/esm/cron-request-verification.js +80 -0
  409. package/dist/esm/cron-request-verification.js.map +1 -0
  410. package/dist/esm/custom-node-modules.d.ts +30 -0
  411. package/dist/esm/custom-node-modules.d.ts.map +1 -0
  412. package/dist/esm/custom-node-modules.js +84 -0
  413. package/dist/esm/custom-node-modules.js.map +1 -0
  414. package/dist/esm/data-api-route-generator.d.ts +27 -0
  415. package/dist/esm/data-api-route-generator.d.ts.map +1 -1
  416. package/dist/esm/data-api-route-generator.js +365 -28
  417. package/dist/esm/data-api-route-generator.js.map +1 -1
  418. package/dist/esm/ecommerce/cart-availability.d.ts.map +1 -1
  419. package/dist/esm/ecommerce/cart-availability.js +22 -13
  420. package/dist/esm/ecommerce/cart-availability.js.map +1 -1
  421. package/dist/esm/ecommerce/stock-decrement.d.ts +2 -1
  422. package/dist/esm/ecommerce/stock-decrement.d.ts.map +1 -1
  423. package/dist/esm/ecommerce/stock-decrement.js +6 -0
  424. package/dist/esm/ecommerce/stock-decrement.js.map +1 -1
  425. package/dist/esm/executor-generator.d.ts +0 -1
  426. package/dist/esm/executor-generator.d.ts.map +1 -1
  427. package/dist/esm/executor-generator.js +212 -18
  428. package/dist/esm/executor-generator.js.map +1 -1
  429. package/dist/esm/index.d.ts +12 -4
  430. package/dist/esm/index.d.ts.map +1 -1
  431. package/dist/esm/index.js +10 -4
  432. package/dist/esm/index.js.map +1 -1
  433. package/dist/esm/invoice/api-routes-code.d.ts +26 -0
  434. package/dist/esm/invoice/api-routes-code.d.ts.map +1 -1
  435. package/dist/esm/invoice/api-routes-code.js +421 -390
  436. package/dist/esm/invoice/api-routes-code.js.map +1 -1
  437. package/dist/esm/invoice/data-access-code.d.ts.map +1 -1
  438. package/dist/esm/invoice/data-access-code.js +420 -107
  439. package/dist/esm/invoice/data-access-code.js.map +1 -1
  440. package/dist/esm/invoice/index.d.ts.map +1 -1
  441. package/dist/esm/invoice/index.js +25 -1
  442. package/dist/esm/invoice/index.js.map +1 -1
  443. package/dist/esm/invoice/invoice-assembly-code.d.ts +12 -0
  444. package/dist/esm/invoice/invoice-assembly-code.d.ts.map +1 -0
  445. package/dist/esm/invoice/invoice-assembly-code.js +513 -0
  446. package/dist/esm/invoice/invoice-assembly-code.js.map +1 -0
  447. package/dist/esm/invoice/invoice-html-code.d.ts.map +1 -1
  448. package/dist/esm/invoice/invoice-html-code.js +111 -9
  449. package/dist/esm/invoice/invoice-html-code.js.map +1 -1
  450. package/dist/esm/invoice/pdf-service-client-code.d.ts.map +1 -1
  451. package/dist/esm/invoice/pdf-service-client-code.js +3 -4
  452. package/dist/esm/invoice/pdf-service-client-code.js.map +1 -1
  453. package/dist/esm/nodes/account/account-login.d.ts.map +1 -1
  454. package/dist/esm/nodes/account/account-login.js +4 -3
  455. package/dist/esm/nodes/account/account-login.js.map +1 -1
  456. package/dist/esm/nodes/account/account-signup.d.ts.map +1 -1
  457. package/dist/esm/nodes/account/account-signup.js +7 -4
  458. package/dist/esm/nodes/account/account-signup.js.map +1 -1
  459. package/dist/esm/nodes/ai/ai-select-database-data.d.ts.map +1 -1
  460. package/dist/esm/nodes/ai/ai-select-database-data.js +6 -1
  461. package/dist/esm/nodes/ai/ai-select-database-data.js.map +1 -1
  462. package/dist/esm/nodes/browser/browser-get-push-subscription.d.ts +9 -0
  463. package/dist/esm/nodes/browser/browser-get-push-subscription.d.ts.map +1 -0
  464. package/dist/esm/nodes/browser/browser-get-push-subscription.js +22 -0
  465. package/dist/esm/nodes/browser/browser-get-push-subscription.js.map +1 -0
  466. package/dist/esm/nodes/browser/browser-show-notification.d.ts +10 -0
  467. package/dist/esm/nodes/browser/browser-show-notification.d.ts.map +1 -1
  468. package/dist/esm/nodes/browser/browser-show-notification.js +65 -40
  469. package/dist/esm/nodes/browser/browser-show-notification.js.map +1 -1
  470. package/dist/esm/nodes/browser/browser-subscribe-to-push.d.ts +11 -0
  471. package/dist/esm/nodes/browser/browser-subscribe-to-push.d.ts.map +1 -1
  472. package/dist/esm/nodes/browser/browser-subscribe-to-push.js +21 -31
  473. package/dist/esm/nodes/browser/browser-subscribe-to-push.js.map +1 -1
  474. package/dist/esm/nodes/browser/browser-unsubscribe-from-push.d.ts +8 -0
  475. package/dist/esm/nodes/browser/browser-unsubscribe-from-push.d.ts.map +1 -0
  476. package/dist/esm/nodes/browser/browser-unsubscribe-from-push.js +21 -0
  477. package/dist/esm/nodes/browser/browser-unsubscribe-from-push.js.map +1 -0
  478. package/dist/esm/nodes/browser/push-api-access.d.ts +12 -0
  479. package/dist/esm/nodes/browser/push-api-access.d.ts.map +1 -0
  480. package/dist/esm/nodes/browser/push-api-access.js +13 -0
  481. package/dist/esm/nodes/browser/push-api-access.js.map +1 -0
  482. package/dist/esm/nodes/cart/cart-add-item.d.ts.map +1 -1
  483. package/dist/esm/nodes/cart/cart-add-item.js +174 -10
  484. package/dist/esm/nodes/cart/cart-add-item.js.map +1 -1
  485. package/dist/esm/nodes/cart/cart-clear.d.ts.map +1 -1
  486. package/dist/esm/nodes/cart/cart-clear.js +11 -0
  487. package/dist/esm/nodes/cart/cart-clear.js.map +1 -1
  488. package/dist/esm/nodes/cart/cart-get-total.d.ts.map +1 -1
  489. package/dist/esm/nodes/cart/cart-get-total.js +261 -4
  490. package/dist/esm/nodes/cart/cart-get-total.js.map +1 -1
  491. package/dist/esm/nodes/cart/cart-price-order.d.ts +3 -0
  492. package/dist/esm/nodes/cart/cart-price-order.d.ts.map +1 -0
  493. package/dist/esm/nodes/cart/cart-price-order.js +278 -0
  494. package/dist/esm/nodes/cart/cart-price-order.js.map +1 -0
  495. package/dist/esm/nodes/cart/cart-update-item-quantity.d.ts.map +1 -1
  496. package/dist/esm/nodes/cart/cart-update-item-quantity.js +7 -0
  497. package/dist/esm/nodes/cart/cart-update-item-quantity.js.map +1 -1
  498. package/dist/esm/nodes/data/data-count.d.ts.map +1 -1
  499. package/dist/esm/nodes/data/data-count.js +6 -1
  500. package/dist/esm/nodes/data/data-count.js.map +1 -1
  501. package/dist/esm/nodes/data/data-create-item.d.ts.map +1 -1
  502. package/dist/esm/nodes/data/data-create-item.js +11 -1
  503. package/dist/esm/nodes/data/data-create-item.js.map +1 -1
  504. package/dist/esm/nodes/data/data-delete-item.d.ts.map +1 -1
  505. package/dist/esm/nodes/data/data-delete-item.js +29 -0
  506. package/dist/esm/nodes/data/data-delete-item.js.map +1 -1
  507. package/dist/esm/nodes/data/data-raw-query.d.ts.map +1 -1
  508. package/dist/esm/nodes/data/data-raw-query.js +6 -1
  509. package/dist/esm/nodes/data/data-raw-query.js.map +1 -1
  510. package/dist/esm/nodes/data/data-select.d.ts.map +1 -1
  511. package/dist/esm/nodes/data/data-select.js +6 -1
  512. package/dist/esm/nodes/data/data-select.js.map +1 -1
  513. package/dist/esm/nodes/data/data-update-item.d.ts.map +1 -1
  514. package/dist/esm/nodes/data/data-update-item.js +29 -0
  515. package/dist/esm/nodes/data/data-update-item.js.map +1 -1
  516. package/dist/esm/nodes/ecommerce/ecommerce-generate-invoice.d.ts.map +1 -1
  517. package/dist/esm/nodes/ecommerce/ecommerce-generate-invoice.js +7 -1
  518. package/dist/esm/nodes/ecommerce/ecommerce-generate-invoice.js.map +1 -1
  519. package/dist/esm/nodes/file-storage/file-storage-upload.d.ts.map +1 -1
  520. package/dist/esm/nodes/file-storage/file-storage-upload.js +7 -0
  521. package/dist/esm/nodes/file-storage/file-storage-upload.js.map +1 -1
  522. package/dist/esm/nodes/general/general-custom-js.d.ts.map +1 -1
  523. package/dist/esm/nodes/general/general-custom-js.js +21 -5
  524. package/dist/esm/nodes/general/general-custom-js.js.map +1 -1
  525. package/dist/esm/nodes/index.d.ts.map +1 -1
  526. package/dist/esm/nodes/index.js +9 -4
  527. package/dist/esm/nodes/index.js.map +1 -1
  528. package/dist/esm/nodes/payment/payment-billing-portal.d.ts +3 -0
  529. package/dist/esm/nodes/payment/payment-billing-portal.d.ts.map +1 -0
  530. package/dist/esm/nodes/payment/payment-billing-portal.js +49 -0
  531. package/dist/esm/nodes/payment/payment-billing-portal.js.map +1 -0
  532. package/dist/esm/nodes/payment/payment-charge-user.d.ts.map +1 -1
  533. package/dist/esm/nodes/payment/payment-charge-user.js +227 -360
  534. package/dist/esm/nodes/payment/payment-charge-user.js.map +1 -1
  535. package/dist/esm/nodes/payment/payment-close-checkout.d.ts +3 -0
  536. package/dist/esm/nodes/payment/payment-close-checkout.d.ts.map +1 -0
  537. package/dist/esm/nodes/payment/payment-close-checkout.js +138 -0
  538. package/dist/esm/nodes/payment/payment-close-checkout.js.map +1 -0
  539. package/dist/esm/nodes/payment/payment-ensure-subscription-plan.d.ts +3 -0
  540. package/dist/esm/nodes/payment/payment-ensure-subscription-plan.d.ts.map +1 -0
  541. package/dist/esm/nodes/payment/payment-ensure-subscription-plan.js +64 -0
  542. package/dist/esm/nodes/payment/payment-ensure-subscription-plan.js.map +1 -0
  543. package/dist/esm/nodes/payment/payment-manage-subscription.d.ts +3 -0
  544. package/dist/esm/nodes/payment/payment-manage-subscription.d.ts.map +1 -0
  545. package/dist/esm/nodes/payment/payment-manage-subscription.js +86 -0
  546. package/dist/esm/nodes/payment/payment-manage-subscription.js.map +1 -0
  547. package/dist/esm/nodes/payment/payment-refund.d.ts.map +1 -1
  548. package/dist/esm/nodes/payment/payment-refund.js +50 -404
  549. package/dist/esm/nodes/payment/payment-refund.js.map +1 -1
  550. package/dist/esm/nodes/push/push-send-notification.d.ts +14 -0
  551. package/dist/esm/nodes/push/push-send-notification.d.ts.map +1 -0
  552. package/dist/esm/nodes/push/push-send-notification.js +80 -0
  553. package/dist/esm/nodes/push/push-send-notification.js.map +1 -0
  554. package/dist/esm/payments/drivers/coingate-driver-code.d.ts +16 -0
  555. package/dist/esm/payments/drivers/coingate-driver-code.d.ts.map +1 -0
  556. package/dist/esm/payments/drivers/coingate-driver-code.js +467 -0
  557. package/dist/esm/payments/drivers/coingate-driver-code.js.map +1 -0
  558. package/dist/esm/payments/drivers/mollie-driver-code.d.ts +16 -0
  559. package/dist/esm/payments/drivers/mollie-driver-code.d.ts.map +1 -0
  560. package/dist/esm/payments/drivers/mollie-driver-code.js +619 -0
  561. package/dist/esm/payments/drivers/mollie-driver-code.js.map +1 -0
  562. package/dist/esm/payments/drivers/paddle-driver-code.d.ts +12 -0
  563. package/dist/esm/payments/drivers/paddle-driver-code.d.ts.map +1 -0
  564. package/dist/esm/payments/drivers/paddle-driver-code.js +679 -0
  565. package/dist/esm/payments/drivers/paddle-driver-code.js.map +1 -0
  566. package/dist/esm/payments/drivers/paypal-driver-code.d.ts +12 -0
  567. package/dist/esm/payments/drivers/paypal-driver-code.d.ts.map +1 -0
  568. package/dist/esm/payments/drivers/paypal-driver-code.js +1257 -0
  569. package/dist/esm/payments/drivers/paypal-driver-code.js.map +1 -0
  570. package/dist/esm/payments/drivers/razorpay-driver-code.d.ts +12 -0
  571. package/dist/esm/payments/drivers/razorpay-driver-code.d.ts.map +1 -0
  572. package/dist/esm/payments/drivers/razorpay-driver-code.js +728 -0
  573. package/dist/esm/payments/drivers/razorpay-driver-code.js.map +1 -0
  574. package/dist/esm/payments/drivers/square-driver-code.d.ts +14 -0
  575. package/dist/esm/payments/drivers/square-driver-code.d.ts.map +1 -0
  576. package/dist/esm/payments/drivers/square-driver-code.js +927 -0
  577. package/dist/esm/payments/drivers/square-driver-code.js.map +1 -0
  578. package/dist/esm/payments/drivers/stripe-driver-code.d.ts +12 -0
  579. package/dist/esm/payments/drivers/stripe-driver-code.d.ts.map +1 -0
  580. package/dist/esm/payments/drivers/stripe-driver-code.js +774 -0
  581. package/dist/esm/payments/drivers/stripe-driver-code.js.map +1 -0
  582. package/dist/esm/payments/index.d.ts +66 -0
  583. package/dist/esm/payments/index.d.ts.map +1 -0
  584. package/dist/esm/payments/index.js +164 -0
  585. package/dist/esm/payments/index.js.map +1 -0
  586. package/dist/esm/payments/payment-core-code.d.ts +19 -0
  587. package/dist/esm/payments/payment-core-code.d.ts.map +1 -0
  588. package/dist/esm/payments/payment-core-code.js +418 -0
  589. package/dist/esm/payments/payment-core-code.js.map +1 -0
  590. package/dist/esm/payments/payment-driver-code-map.d.ts +4 -0
  591. package/dist/esm/payments/payment-driver-code-map.d.ts.map +1 -0
  592. package/dist/esm/payments/payment-driver-code-map.js +18 -0
  593. package/dist/esm/payments/payment-driver-code-map.js.map +1 -0
  594. package/dist/esm/payments/payment-drivers-scope.d.ts +35 -0
  595. package/dist/esm/payments/payment-drivers-scope.d.ts.map +1 -0
  596. package/dist/esm/payments/payment-drivers-scope.js +51 -0
  597. package/dist/esm/payments/payment-drivers-scope.js.map +1 -0
  598. package/dist/esm/payments/payment-registry-code.d.ts +8 -0
  599. package/dist/esm/payments/payment-registry-code.d.ts.map +1 -0
  600. package/dist/esm/payments/payment-registry-code.js +37 -0
  601. package/dist/esm/payments/payment-registry-code.js.map +1 -0
  602. package/dist/esm/pg-client-code.d.ts +10 -0
  603. package/dist/esm/pg-client-code.d.ts.map +1 -1
  604. package/dist/esm/pg-client-code.js +25 -0
  605. package/dist/esm/pg-client-code.js.map +1 -1
  606. package/dist/esm/runtime-storage-generator.d.ts +28 -0
  607. package/dist/esm/runtime-storage-generator.d.ts.map +1 -1
  608. package/dist/esm/runtime-storage-generator.js +239 -4
  609. package/dist/esm/runtime-storage-generator.js.map +1 -1
  610. package/dist/esm/secret-collector.d.ts.map +1 -1
  611. package/dist/esm/secret-collector.js +8 -3
  612. package/dist/esm/secret-collector.js.map +1 -1
  613. package/dist/esm/security-scanner.d.ts +10 -1
  614. package/dist/esm/security-scanner.d.ts.map +1 -1
  615. package/dist/esm/security-scanner.js +18 -0
  616. package/dist/esm/security-scanner.js.map +1 -1
  617. package/dist/esm/segment-context-needs.d.ts +38 -0
  618. package/dist/esm/segment-context-needs.d.ts.map +1 -0
  619. package/dist/esm/segment-context-needs.js +125 -0
  620. package/dist/esm/segment-context-needs.js.map +1 -0
  621. package/dist/esm/segment-splitter.d.ts.map +1 -1
  622. package/dist/esm/segment-splitter.js +6 -1
  623. package/dist/esm/segment-splitter.js.map +1 -1
  624. package/dist/esm/segment-trust.d.ts +50 -0
  625. package/dist/esm/segment-trust.d.ts.map +1 -0
  626. package/dist/esm/segment-trust.js +111 -0
  627. package/dist/esm/segment-trust.js.map +1 -0
  628. package/dist/esm/sent-email-log/sent-email-log-code.d.ts +19 -0
  629. package/dist/esm/sent-email-log/sent-email-log-code.d.ts.map +1 -1
  630. package/dist/esm/sent-email-log/sent-email-log-code.js +2 -25
  631. package/dist/esm/sent-email-log/sent-email-log-code.js.map +1 -1
  632. package/dist/esm/server-runtime-code.d.ts +34 -0
  633. package/dist/esm/server-runtime-code.d.ts.map +1 -0
  634. package/dist/esm/server-runtime-code.js +299 -0
  635. package/dist/esm/server-runtime-code.js.map +1 -0
  636. package/dist/esm/session-cookie-resolver.d.ts +3 -78
  637. package/dist/esm/session-cookie-resolver.d.ts.map +1 -1
  638. package/dist/esm/session-cookie-resolver.js +7 -274
  639. package/dist/esm/session-cookie-resolver.js.map +1 -1
  640. package/dist/esm/subscriber-access-route-generator.d.ts +71 -0
  641. package/dist/esm/subscriber-access-route-generator.d.ts.map +1 -0
  642. package/dist/esm/subscriber-access-route-generator.js +292 -0
  643. package/dist/esm/subscriber-access-route-generator.js.map +1 -0
  644. package/dist/esm/tsconfig.tsbuildinfo +1 -1
  645. package/dist/esm/types.d.ts +6 -0
  646. package/dist/esm/types.d.ts.map +1 -1
  647. package/dist/esm/webhook-delivery-lease/index.d.ts +8 -0
  648. package/dist/esm/webhook-delivery-lease/index.d.ts.map +1 -0
  649. package/dist/esm/webhook-delivery-lease/index.js +37 -0
  650. package/dist/esm/webhook-delivery-lease/index.js.map +1 -0
  651. package/dist/esm/webhook-delivery-lease/webhook-delivery-lease-code.d.ts +26 -0
  652. package/dist/esm/webhook-delivery-lease/webhook-delivery-lease-code.d.ts.map +1 -0
  653. package/dist/esm/webhook-delivery-lease/webhook-delivery-lease-code.js +147 -0
  654. package/dist/esm/webhook-delivery-lease/webhook-delivery-lease-code.js.map +1 -0
  655. package/dist/esm/webhook-delivery-lease/webhook-delivery-lease-scope.d.ts +16 -0
  656. package/dist/esm/webhook-delivery-lease/webhook-delivery-lease-scope.d.ts.map +1 -0
  657. package/dist/esm/webhook-delivery-lease/webhook-delivery-lease-scope.js +16 -0
  658. package/dist/esm/webhook-delivery-lease/webhook-delivery-lease-scope.js.map +1 -0
  659. package/dist/esm/webhook-generator.d.ts +1 -1
  660. package/dist/esm/webhook-generator.d.ts.map +1 -1
  661. package/dist/esm/webhook-generator.js +342 -254
  662. package/dist/esm/webhook-generator.js.map +1 -1
  663. package/dist/esm/webhook-signature-verification.d.ts +17 -1
  664. package/dist/esm/webhook-signature-verification.d.ts.map +1 -1
  665. package/dist/esm/webhook-signature-verification.js +179 -25
  666. package/dist/esm/webhook-signature-verification.js.map +1 -1
  667. package/dist/esm/workflow-auth-generator.d.ts +9 -6
  668. package/dist/esm/workflow-auth-generator.d.ts.map +1 -1
  669. package/dist/esm/workflow-auth-generator.js +132 -28
  670. package/dist/esm/workflow-auth-generator.js.map +1 -1
  671. package/dist/esm/workflow-component-plugin.d.ts.map +1 -1
  672. package/dist/esm/workflow-component-plugin.js +65 -28
  673. package/dist/esm/workflow-component-plugin.js.map +1 -1
  674. package/dist/esm/workflow-project-plugin.d.ts +13 -0
  675. package/dist/esm/workflow-project-plugin.d.ts.map +1 -1
  676. package/dist/esm/workflow-project-plugin.js +212 -63
  677. package/dist/esm/workflow-project-plugin.js.map +1 -1
  678. package/package.json +4 -4
  679. package/src/admin-form-hydration.ts +28 -0
  680. package/src/api-route-generator.ts +251 -64
  681. package/src/auth-generator.ts +273 -53
  682. package/src/auth-return/signed-in-destination-code.ts +32 -0
  683. package/src/cart-pricing-preamble.ts +22 -0
  684. package/src/cron-request-verification.ts +79 -0
  685. package/src/custom-node-modules.ts +102 -0
  686. package/src/data-api-route-generator.ts +370 -28
  687. package/src/ecommerce/cart-availability.ts +22 -13
  688. package/src/ecommerce/stock-decrement.ts +13 -1
  689. package/src/executor-generator.ts +212 -19
  690. package/src/index.ts +28 -7
  691. package/src/invoice/api-routes-code.ts +424 -391
  692. package/src/invoice/data-access-code.ts +431 -110
  693. package/src/invoice/index.ts +31 -1
  694. package/src/invoice/invoice-assembly-code.ts +514 -0
  695. package/src/invoice/invoice-html-code.ts +111 -9
  696. package/src/invoice/pdf-service-client-code.ts +3 -4
  697. package/src/nodes/account/account-login.ts +4 -3
  698. package/src/nodes/account/account-signup.ts +7 -4
  699. package/src/nodes/ai/ai-select-database-data.ts +10 -1
  700. package/src/nodes/browser/browser-get-push-subscription.ts +23 -0
  701. package/src/nodes/browser/browser-show-notification.ts +61 -38
  702. package/src/nodes/browser/browser-subscribe-to-push.ts +26 -36
  703. package/src/nodes/browser/browser-unsubscribe-from-push.ts +22 -0
  704. package/src/nodes/browser/push-api-access.ts +20 -0
  705. package/src/nodes/cart/cart-add-item.ts +200 -9
  706. package/src/nodes/cart/cart-clear.ts +11 -0
  707. package/src/nodes/cart/cart-get-total.ts +279 -7
  708. package/src/nodes/cart/cart-price-order.ts +351 -0
  709. package/src/nodes/cart/cart-update-item-quantity.ts +7 -0
  710. package/src/nodes/data/data-count.ts +9 -1
  711. package/src/nodes/data/data-create-item.ts +15 -1
  712. package/src/nodes/data/data-delete-item.ts +32 -0
  713. package/src/nodes/data/data-raw-query.ts +9 -1
  714. package/src/nodes/data/data-select.ts +9 -1
  715. package/src/nodes/data/data-update-item.ts +32 -0
  716. package/src/nodes/ecommerce/ecommerce-generate-invoice.ts +11 -1
  717. package/src/nodes/file-storage/file-storage-upload.ts +8 -0
  718. package/src/nodes/general/general-custom-js.ts +21 -5
  719. package/src/nodes/index.ts +16 -6
  720. package/src/nodes/payment/payment-billing-portal.ts +51 -0
  721. package/src/nodes/payment/payment-charge-user.ts +236 -442
  722. package/src/nodes/payment/payment-close-checkout.ts +137 -0
  723. package/src/nodes/payment/payment-ensure-subscription-plan.ts +66 -0
  724. package/src/nodes/payment/payment-manage-subscription.ts +89 -0
  725. package/src/nodes/payment/payment-refund.ts +52 -467
  726. package/src/nodes/payment-drivers-global.d.ts +13 -0
  727. package/src/nodes/push/push-send-notification.ts +83 -0
  728. package/src/nodes/workflow-utils-global.d.ts +5 -0
  729. package/src/payments/drivers/coingate-driver-code.ts +466 -0
  730. package/src/payments/drivers/mollie-driver-code.ts +618 -0
  731. package/src/payments/drivers/paddle-driver-code.ts +678 -0
  732. package/src/payments/drivers/paypal-driver-code.ts +1256 -0
  733. package/src/payments/drivers/razorpay-driver-code.ts +727 -0
  734. package/src/payments/drivers/square-driver-code.ts +926 -0
  735. package/src/payments/drivers/stripe-driver-code.ts +773 -0
  736. package/src/payments/index.ts +204 -0
  737. package/src/payments/payment-core-code.ts +421 -0
  738. package/src/payments/payment-driver-code-map.ts +19 -0
  739. package/src/payments/payment-drivers-scope.ts +66 -0
  740. package/src/payments/payment-registry-code.ts +38 -0
  741. package/src/pg-client-code.ts +30 -0
  742. package/src/runtime-storage-generator.ts +241 -4
  743. package/src/secret-collector.ts +8 -3
  744. package/src/security-scanner.ts +22 -0
  745. package/src/segment-context-needs.ts +148 -0
  746. package/src/segment-splitter.ts +6 -1
  747. package/src/segment-trust.ts +170 -0
  748. package/src/sent-email-log/sent-email-log-code.ts +2 -32
  749. package/src/server-runtime-code.ts +298 -0
  750. package/src/session-cookie-resolver.ts +9 -277
  751. package/src/subscriber-access-route-generator.ts +351 -0
  752. package/src/types.ts +6 -0
  753. package/src/webhook-delivery-lease/index.ts +44 -0
  754. package/src/webhook-delivery-lease/webhook-delivery-lease-code.ts +151 -0
  755. package/src/webhook-delivery-lease/webhook-delivery-lease-scope.ts +18 -0
  756. package/src/webhook-generator.ts +359 -260
  757. package/src/webhook-signature-verification.ts +180 -25
  758. package/src/workflow-auth-generator.ts +137 -28
  759. package/src/workflow-component-plugin.ts +77 -20
  760. package/src/workflow-project-plugin.ts +247 -44
  761. package/dist/cjs/nodes/payment/payment-cancel-plan.d.ts +0 -3
  762. package/dist/cjs/nodes/payment/payment-cancel-plan.d.ts.map +0 -1
  763. package/dist/cjs/nodes/payment/payment-cancel-plan.js +0 -33
  764. package/dist/cjs/nodes/payment/payment-cancel-plan.js.map +0 -1
  765. package/dist/cjs/nodes/payment/payment-create-subscription.d.ts +0 -3
  766. package/dist/cjs/nodes/payment/payment-create-subscription.d.ts.map +0 -1
  767. package/dist/cjs/nodes/payment/payment-create-subscription.js +0 -41
  768. package/dist/cjs/nodes/payment/payment-create-subscription.js.map +0 -1
  769. package/dist/cjs/nodes/payment/payment-subscribe-to-plan.d.ts +0 -3
  770. package/dist/cjs/nodes/payment/payment-subscribe-to-plan.d.ts.map +0 -1
  771. package/dist/cjs/nodes/payment/payment-subscribe-to-plan.js +0 -45
  772. package/dist/cjs/nodes/payment/payment-subscribe-to-plan.js.map +0 -1
  773. package/dist/esm/nodes/payment/payment-cancel-plan.d.ts +0 -3
  774. package/dist/esm/nodes/payment/payment-cancel-plan.d.ts.map +0 -1
  775. package/dist/esm/nodes/payment/payment-cancel-plan.js +0 -30
  776. package/dist/esm/nodes/payment/payment-cancel-plan.js.map +0 -1
  777. package/dist/esm/nodes/payment/payment-create-subscription.d.ts +0 -3
  778. package/dist/esm/nodes/payment/payment-create-subscription.d.ts.map +0 -1
  779. package/dist/esm/nodes/payment/payment-create-subscription.js +0 -38
  780. package/dist/esm/nodes/payment/payment-create-subscription.js.map +0 -1
  781. package/dist/esm/nodes/payment/payment-subscribe-to-plan.d.ts +0 -3
  782. package/dist/esm/nodes/payment/payment-subscribe-to-plan.d.ts.map +0 -1
  783. package/dist/esm/nodes/payment/payment-subscribe-to-plan.js +0 -42
  784. package/dist/esm/nodes/payment/payment-subscribe-to-plan.js.map +0 -1
  785. package/src/nodes/payment/payment-cancel-plan.ts +0 -33
  786. package/src/nodes/payment/payment-create-subscription.ts +0 -42
  787. package/src/nodes/payment/payment-subscribe-to-plan.ts +0 -46
@@ -1,24 +1,31 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.resolveAuthEnvValue = exports.collectOAuthCredentialEnvKeys = exports.NextWorkflowProjectPlugin = exports.stripEventHandlerAttrs = void 0;
3
+ exports.resolveAuthEnvValue = exports.collectOAuthCredentialEnvKeys = exports.NextWorkflowProjectPlugin = exports.stripEventHandlerAttrs = exports.resolveAuthUsersTableName = void 0;
4
4
  const teleport_types_1 = require("@teleporthq/teleport-types");
5
5
  const teleport_shared_1 = require("@teleporthq/teleport-shared");
6
6
  const segment_splitter_1 = require("./segment-splitter");
7
7
  const await_result_1 = require("./await-result");
8
+ const segment_context_needs_1 = require("./segment-context-needs");
9
+ const custom_node_modules_1 = require("./custom-node-modules");
8
10
  const api_route_generator_1 = require("./api-route-generator");
9
11
  const workflow_auth_generator_1 = require("./workflow-auth-generator");
12
+ const subscriber_access_route_generator_1 = require("./subscriber-access-route-generator");
10
13
  const secret_collector_1 = require("./secret-collector");
11
14
  const graph_utils_1 = require("./graph-utils");
12
15
  const nodes_1 = require("./nodes");
13
16
  const types_1 = require("./nodes/types");
14
17
  const executor_generator_1 = require("./executor-generator");
18
+ const server_runtime_code_1 = require("./server-runtime-code");
19
+ const segment_trust_1 = require("./segment-trust");
15
20
  const realtime_generator_1 = require("./realtime-generator");
16
21
  const auth_generator_1 = require("./auth-generator");
17
22
  const invoice_1 = require("./invoice");
18
23
  const sent_email_log_1 = require("./sent-email-log");
24
+ const webhook_delivery_lease_1 = require("./webhook-delivery-lease");
19
25
  const email_locale_1 = require("./email-locale");
20
26
  const workflow_utils_alias_1 = require("./workflow-utils-alias");
21
27
  const webhook_generator_1 = require("./webhook-generator");
28
+ const payments_1 = require("./payments");
22
29
  const data_api_route_generator_1 = require("./data-api-route-generator");
23
30
  const account_delete_route_generator_1 = require("./account-delete-route-generator");
24
31
  const transactional_email_code_1 = require("./transactional-email-code");
@@ -32,10 +39,13 @@ const raw_sql_param_binding_1 = require("./raw-sql-param-binding");
32
39
  // password column), then a conventionally-named users table, then the first
33
40
  // non-auxiliary table.
34
41
  const resolveAuthUsersTableName = (authentication) => {
35
- if (!(authentication === null || authentication === void 0 ? void 0 : authentication.enabled) || !(authentication === null || authentication === void 0 ? void 0 : authentication.tables)) {
42
+ if (!(authentication === null || authentication === void 0 ? void 0 : authentication.enabled)) {
36
43
  return undefined;
37
44
  }
38
- const tables = authentication.tables;
45
+ // No declared tables still means the auth options' own `users` table, which
46
+ // is where the session's role is read from — leaving it unguarded would let
47
+ // a browser write that role.
48
+ const tables = authentication.tables || {};
39
49
  const names = Object.keys(tables);
40
50
  if (names.length === 0) {
41
51
  return 'users';
@@ -55,6 +65,7 @@ const resolveAuthUsersTableName = (authentication) => {
55
65
  const nonAux = names.find((n) => !AUX.test(n));
56
66
  return nonAux || names[0];
57
67
  };
68
+ exports.resolveAuthUsersTableName = resolveAuthUsersTableName;
58
69
  // The first node of the given type's config across all workflows + custom nodes
59
70
  // (there is one per project in practice — e.g. the profile page's delete
60
71
  // workflow, or the sign-up workflow). Used to bake a node's email
@@ -205,6 +216,19 @@ class NextWorkflowProjectPlugin {
205
216
  }
206
217
  }
207
218
  }
219
+ // Every app with server routes carries an app secret, with authentication
220
+ // or without: it keys the signatures on server results relayed between
221
+ // workflow steps and the internal-call token, and it is the credential
222
+ // server code presents to its own data, invoice and notification routes.
223
+ // Keyed from '' those are values anyone can compute, so the runtime
224
+ // refuses them all without one. The deploy worker replaces this default
225
+ // with the project's own secret.
226
+ if (uidl.globals && hasServerRoutes(uidl)) {
227
+ uidl.globals.env = uidl.globals.env || {};
228
+ if (!uidl.globals.env.NEXTAUTH_SECRET) {
229
+ uidl.globals.env.NEXTAUTH_SECRET = randomSecretHex();
230
+ }
231
+ }
208
232
  if ((_c = uidl.globals) === null || _c === void 0 ? void 0 : _c.env) {
209
233
  const oauthCredentialKeys = collectOAuthCredentialEnvKeys(uidl.authentication);
210
234
  for (const key of Object.keys(uidl.globals.env)) {
@@ -221,7 +245,7 @@ class NextWorkflowProjectPlugin {
221
245
  return structure;
222
246
  }
223
247
  async runAfter(structure) {
224
- var _a, _b, _c, _d, _e, _f, _g, _h;
248
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j;
225
249
  const { uidl, files, dependencies } = structure;
226
250
  const hasAuthentication = uidl.authentication && uidl.authentication.enabled;
227
251
  if (hasAuthentication) {
@@ -248,6 +272,7 @@ class NextWorkflowProjectPlugin {
248
272
  uidl.globals.env.RUNTIME_STORAGE_PROJECT_ID = '';
249
273
  }
250
274
  }
275
+ (0, payments_1.ensurePaymentDriversModule)(structure, (0, payments_1.resolveStorePaymentDriverIds)(uidl, []));
251
276
  (0, webhook_generator_1.generateWebhookFiles)(structure, uidl.invoiceSettings);
252
277
  if (hasAuthentication) {
253
278
  this.injectSessionProviderIntoApp(structure);
@@ -262,6 +287,9 @@ class NextWorkflowProjectPlugin {
262
287
  if ((0, sent_email_log_1.hasEmailSendingNodeType)(usedNodeTypes)) {
263
288
  (0, sent_email_log_1.ensureSentEmailLogModule)(structure);
264
289
  }
290
+ // Routes that run a payment node or verify a payment webhook require the
291
+ // store's payment drivers (see generatePaymentDriversPreamble).
292
+ (0, payments_1.ensurePaymentDriversModule)(structure, (0, payments_1.resolveStorePaymentDriverIds)(uidl, usedNodeTypes));
265
293
  files.set('workflow-runtime-utils', {
266
294
  path: ['utils', 'workflows'],
267
295
  files: [
@@ -299,7 +327,7 @@ class NextWorkflowProjectPlugin {
299
327
  }
300
328
  // Set true the moment we emit ANY route that bakes an auth policy, so the
301
329
  // shared guard file is emitted iff at least one route actually imports it.
302
- const routeHasPolicy = (p) => !!p && (p.requiresAuth || p.userScoped);
330
+ const routeHasPolicy = (p) => !!p && (p.requiresAuth || p.userScoped || p.serverOnly);
303
331
  let anyGuardedRouteEmitted = false;
304
332
  // Build server segment info for custom nodes so they can call server-side API routes
305
333
  const customNodeServerUrls = {};
@@ -314,14 +342,21 @@ class NextWorkflowProjectPlugin {
314
342
  const cnServerSegments = cnSegments.filter((s) => s.env === 'server');
315
343
  if (cnServerSegments.length > 0) {
316
344
  customNodeServerUrls[cnId] = {};
345
+ // The same list, in the same order, the custom node's runner hands its
346
+ // inner custom-js nodes as `params`.
347
+ const cnGraph = { nodes: cn.nodes || [], edges: cn.edges || [], segments: cnSegments };
317
348
  for (const seg of cnServerSegments) {
349
+ const routeOptions = {
350
+ customNodeIds: (cn.nodes || []).map((n) => n.id),
351
+ trust: (0, segment_trust_1.buildSegmentTrust)(seg, cnGraph),
352
+ };
318
353
  const isStreaming = (0, api_route_generator_1.hasStreamingAINode)(seg);
319
354
  if (routeHasPolicy(cn.protection)) {
320
355
  anyGuardedRouteEmitted = true;
321
356
  }
322
357
  const apiContent = isStreaming
323
- ? (0, api_route_generator_1.generateStreamingServerSegmentAPIRoute)(seg, cn.name || cnId, cn.protection)
324
- : (0, api_route_generator_1.generateServerSegmentAPIRoute)(seg, cn.name || cnId, cn.protection);
358
+ ? (0, api_route_generator_1.generateStreamingServerSegmentAPIRoute)(seg, cn.name || cnId, cn.protection, routeOptions)
359
+ : (0, api_route_generator_1.generateServerSegmentAPIRoute)(seg, cn.name || cnId, cn.protection, routeOptions);
325
360
  const fileName = (0, api_route_generator_1.getAPIRouteFileName)(cnId, seg.id, cn.name || cnId);
326
361
  customNodeServerUrls[cnId][seg.id] = `/api/workflows/${fileName}`;
327
362
  files.set(`workflow-api-cn-${cnId}-${seg.id}`, {
@@ -337,7 +372,14 @@ class NextWorkflowProjectPlugin {
337
372
  }
338
373
  }
339
374
  }
340
- const customNodeCode = this.generateCustomNodesFile(customNodes, customNodeServerUrls);
375
+ // Nodes only the admin pages call get their own module, which only the
376
+ // pages that call them import (see custom-node-modules.ts).
377
+ const adminModuleIds = (0, custom_node_modules_1.collectAdminModuleCustomNodeIds)(customNodes);
378
+ const customNodeCode = adminModuleIds.size > 0
379
+ ? this.generateCustomNodesFile(customNodes, customNodeServerUrls, {
380
+ exclude: adminModuleIds,
381
+ })
382
+ : this.generateCustomNodesFile(customNodes, customNodeServerUrls);
341
383
  files.set('workflow-custom-nodes', {
342
384
  path: ['utils', 'workflows'],
343
385
  files: [
@@ -348,6 +390,20 @@ class NextWorkflowProjectPlugin {
348
390
  },
349
391
  ],
350
392
  });
393
+ if (adminModuleIds.size > 0) {
394
+ files.set('workflow-custom-nodes-admin', {
395
+ path: ['utils', 'workflows'],
396
+ files: [
397
+ {
398
+ name: custom_node_modules_1.ADMIN_CUSTOM_NODES_MODULE,
399
+ fileType: teleport_types_1.FileType.JS,
400
+ content: this.generateCustomNodesFile(customNodes, customNodeServerUrls, {
401
+ only: adminModuleIds,
402
+ }),
403
+ },
404
+ ],
405
+ });
406
+ }
351
407
  }
352
408
  let hasServerSegments = Object.keys(customNodeServerUrls).length > 0;
353
409
  // Track which payment providers are already handled by a workflow-driven
@@ -356,6 +412,18 @@ class NextWorkflowProjectPlugin {
356
412
  const webhookProvidersOwnedByWorkflows = new Set();
357
413
  for (const workflow of Object.values(allWorkflows)) {
358
414
  if (workflow.trigger.type === 'event-cron-triggered') {
415
+ // A cron route runs its whole graph on the server through the same
416
+ // runtime and handler file a server segment uses, so an app whose only
417
+ // server work is a cron still needs them.
418
+ hasServerSegments = true;
419
+ // The route refuses every request not signed with this key; the deploy
420
+ // fills it in (see cron-request-verification.ts).
421
+ if (!uidl.globals.env) {
422
+ uidl.globals.env = {};
423
+ }
424
+ if (!uidl.globals.env.TELEPORT_CRON_SECRET) {
425
+ uidl.globals.env.TELEPORT_CRON_SECRET = '';
426
+ }
359
427
  const cronContent = (0, api_route_generator_1.generateCronAPIRoute)(workflow, customNodes);
360
428
  const cronFileName = (0, api_route_generator_1.getCronRouteFileName)(workflow);
361
429
  files.set(`workflow-cron-${workflow.id}`, {
@@ -385,18 +453,15 @@ class NextWorkflowProjectPlugin {
385
453
  },
386
454
  ],
387
455
  });
388
- // Detect which payment provider this webhook is handling so the
389
- // legacy hard-coded emission (webhook-generator.ts) can be skipped
390
- // for the same provider. Uses both the URL path and the trigger's
391
- // signature algorithm as hints — the former is what the GUI emits,
392
- // the latter is a defence in case the path convention changes.
393
- const urlPath = (workflow.webhookConfig.urlPath || '').toLowerCase();
394
- const sigAlgorithm = (workflow.webhookConfig.signatureAlgorithm || '').toLowerCase();
395
- if (urlPath.includes('stripe') || sigAlgorithm.includes('stripe')) {
396
- webhookProvidersOwnedByWorkflows.add('stripe');
456
+ // The provider this webhook handles, so the legacy hard-coded emission
457
+ // (webhook-generator.ts) is skipped for it.
458
+ const ownedProvider = (0, payments_1.readWebhookPaymentProvider)(workflow.webhookConfig);
459
+ if (ownedProvider) {
460
+ webhookProvidersOwnedByWorkflows.add(ownedProvider);
397
461
  }
398
- if (urlPath.includes('paypal') || sigAlgorithm.includes('paypal')) {
399
- webhookProvidersOwnedByWorkflows.add('paypal');
462
+ // A payment webhook runs one delivery at a time; its route requires the lease.
463
+ if ((0, payments_1.isPaymentWebhookConfig)(workflow.webhookConfig)) {
464
+ (0, webhook_delivery_lease_1.ensureWebhookDeliveryLeaseModule)(structure);
400
465
  }
401
466
  // signatureSecret may arrive as either a bare env-var-name string or a
402
467
  // DynamicNode {type:'dynamic', content:{referenceType:'secret', id:'NAME'}}.
@@ -430,15 +495,17 @@ class NextWorkflowProjectPlugin {
430
495
  }
431
496
  const segments = (0, segment_splitter_1.splitIntoSegments)(workflow);
432
497
  const serverSegments = segments.filter((s) => s.env === 'server');
498
+ const workflowGraph = { nodes: workflow.nodes || [], edges: workflow.edges || [], segments };
433
499
  for (const serverSeg of serverSegments) {
434
500
  hasServerSegments = true;
435
501
  const isStreaming = (0, api_route_generator_1.hasStreamingAINode)(serverSeg);
436
502
  if (routeHasPolicy(workflow.protection)) {
437
503
  anyGuardedRouteEmitted = true;
438
504
  }
505
+ const routeOptions = { trust: (0, segment_trust_1.buildSegmentTrust)(serverSeg, workflowGraph) };
439
506
  const apiContent = isStreaming
440
- ? (0, api_route_generator_1.generateStreamingServerSegmentAPIRoute)(serverSeg, workflow.name, workflow.protection)
441
- : (0, api_route_generator_1.generateServerSegmentAPIRoute)(serverSeg, workflow.name, workflow.protection);
507
+ ? (0, api_route_generator_1.generateStreamingServerSegmentAPIRoute)(serverSeg, workflow.name, workflow.protection, routeOptions)
508
+ : (0, api_route_generator_1.generateServerSegmentAPIRoute)(serverSeg, workflow.name, workflow.protection, routeOptions);
442
509
  const fileName = (0, api_route_generator_1.getAPIRouteFileName)(workflow.id, serverSeg.id, workflow.name);
443
510
  files.set(`workflow-api-${workflow.id}-${serverSeg.id}`, {
444
511
  path: ['pages', 'api', 'workflows'],
@@ -459,7 +526,7 @@ class NextWorkflowProjectPlugin {
459
526
  {
460
527
  name: 'server-runtime',
461
528
  fileType: teleport_types_1.FileType.JS,
462
- content: (0, executor_generator_1.generateServerRuntimeCode)(),
529
+ content: (0, server_runtime_code_1.generateServerRuntimeCode)(),
463
530
  },
464
531
  ],
465
532
  });
@@ -474,7 +541,10 @@ class NextWorkflowProjectPlugin {
474
541
  {
475
542
  name: 'workflow-auth',
476
543
  fileType: teleport_types_1.FileType.JS,
477
- content: (0, workflow_auth_generator_1.generateWorkflowAuthHelperFile)(),
544
+ content: (0, workflow_auth_generator_1.generateWorkflowAuthHelperFile)({
545
+ withSubscriberAccess: ((_b = uidl.authentication) === null || _b === void 0 ? void 0 : _b.enabled) === true &&
546
+ (0, subscriber_access_route_generator_1.hasSubscriberOnlyPages)(uidl.authentication),
547
+ }),
478
548
  },
479
549
  ],
480
550
  });
@@ -500,7 +570,7 @@ class NextWorkflowProjectPlugin {
500
570
  // `password_reset_tokens`, the real `users` table is left mutable
501
571
  // unauthenticated. The identity table is the one storing credentials
502
572
  // (an email/login column AND a password column).
503
- const authUsersTableName = resolveAuthUsersTableName(uidl.authentication);
573
+ const authUsersTableName = (0, exports.resolveAuthUsersTableName)(uidl.authentication);
504
574
  // Low-stock auto-fire: the data-api wakes up the
505
575
  // /api/ecommerce/low-stock-alert endpoint on the place-order
506
576
  // workflow's stock-check SELECT. Both flags are sourced from
@@ -510,9 +580,9 @@ class NextWorkflowProjectPlugin {
510
580
  const ecom = uidl.ecommerceSettings;
511
581
  const lowStockAlertsEnabled = !!(ecom &&
512
582
  ecom.stockManagement &&
513
- ((_b = ecom.stockManagementConfig) === null || _b === void 0 ? void 0 : _b.lowStockAlerts) &&
514
- ((_d = (_c = ecom.stockManagementConfig) === null || _c === void 0 ? void 0 : _c.lowStockAlertConfig) === null || _d === void 0 ? void 0 : _d.provider));
515
- const lowStockThreshold = typeof ((_e = ecom === null || ecom === void 0 ? void 0 : ecom.stockManagementConfig) === null || _e === void 0 ? void 0 : _e.lowStockThreshold) === 'number'
583
+ ((_c = ecom.stockManagementConfig) === null || _c === void 0 ? void 0 : _c.lowStockAlerts) &&
584
+ ((_e = (_d = ecom.stockManagementConfig) === null || _d === void 0 ? void 0 : _d.lowStockAlertConfig) === null || _e === void 0 ? void 0 : _e.provider));
585
+ const lowStockThreshold = typeof ((_f = ecom === null || ecom === void 0 ? void 0 : ecom.stockManagementConfig) === null || _f === void 0 ? void 0 : _f.lowStockThreshold) === 'number'
516
586
  ? ecom.stockManagementConfig.lowStockThreshold
517
587
  : 5;
518
588
  files.set('workflow-data-api-route', {
@@ -535,7 +605,7 @@ class NextWorkflowProjectPlugin {
535
605
  // farewell email's provider/sender/body are baked from the node config (the
536
606
  // credential is read from env at runtime; its placeholder is registered by the
537
607
  // generic secret-reference walk above).
538
- if (((_f = uidl.authentication) === null || _f === void 0 ? void 0 : _f.enabled) && usedNodeTypes.has('account-delete-current')) {
608
+ if (((_g = uidl.authentication) === null || _g === void 0 ? void 0 : _g.enabled) && usedNodeTypes.has('account-delete-current')) {
539
609
  const deleteConfig = findWorkflowNodeConfigByType(uidl.workflows, 'account-delete-current') || {};
540
610
  const providerNodeType = typeof deleteConfig.emailProvider === 'string' ? deleteConfig.emailProvider : '';
541
611
  const emailProvider = providerNodeType.startsWith('email-')
@@ -550,7 +620,7 @@ class NextWorkflowProjectPlugin {
550
620
  name: 'delete-current',
551
621
  fileType: teleport_types_1.FileType.JS,
552
622
  content: (0, account_delete_route_generator_1.generateAccountDeleteRoute)({
553
- authUsersTableName: resolveAuthUsersTableName(uidl.authentication),
623
+ authUsersTableName: (0, exports.resolveAuthUsersTableName)(uidl.authentication),
554
624
  emailProvider,
555
625
  fromEmail: typeof deleteConfig.from === 'string' ? deleteConfig.from : '',
556
626
  emailSecretEnvName,
@@ -595,7 +665,7 @@ class NextWorkflowProjectPlugin {
595
665
  // the rendered PDF directly via uploadInvoicePdfToRuntimeStorage). The
596
666
  // invoice path does NOT add a file-storage-upload node to the UIDL, so it
597
667
  // would otherwise be missed by needsRuntimeStorageRoute.
598
- const needsRuntimeStorageEnv = (0, runtime_storage_generator_1.needsRuntimeStorageRoute)(usedNodeTypes) || Boolean((_g = uidl.invoiceSettings) === null || _g === void 0 ? void 0 : _g.enabled);
668
+ const needsRuntimeStorageEnv = (0, runtime_storage_generator_1.needsRuntimeStorageRoute)(usedNodeTypes) || Boolean((_h = uidl.invoiceSettings) === null || _h === void 0 ? void 0 : _h.enabled);
599
669
  if (needsRuntimeStorageEnv) {
600
670
  if (!uidl.globals.env) {
601
671
  uidl.globals.env = {};
@@ -685,7 +755,7 @@ class NextWorkflowProjectPlugin {
685
755
  wf.trigger.type !== 'event-cron-triggered' &&
686
756
  wf.trigger.type !== 'event-webhook-received');
687
757
  if (globalWorkflows.length > 0) {
688
- const globalWorkflowCode = this.generateGlobalWorkflowsHook(globalWorkflows);
758
+ const globalWorkflowCode = this.generateGlobalWorkflowsHook(globalWorkflows, customNodes);
689
759
  files.set('workflow-global-hook', {
690
760
  path: ['utils', 'workflows'],
691
761
  files: [
@@ -703,7 +773,7 @@ class NextWorkflowProjectPlugin {
703
773
  if ((0, graph_utils_1.projectUsesRealtime)(uidl.workflows)) {
704
774
  this.generateRealtimeFiles(structure);
705
775
  }
706
- if ((_h = uidl.invoiceSettings) === null || _h === void 0 ? void 0 : _h.enabled) {
776
+ if ((_j = uidl.invoiceSettings) === null || _j === void 0 ? void 0 : _j.enabled) {
707
777
  const { dataSourceType, dataSourceConfig } = (0, invoice_1.resolveInvoiceDataSource)(structure);
708
778
  (0, invoice_1.generateInvoiceFiles)(uidl.invoiceSettings, structure, dataSourceType, dataSourceConfig);
709
779
  }
@@ -1061,9 +1131,18 @@ ${entries}
1061
1131
  }
1062
1132
  return map;
1063
1133
  }
1064
- generateCustomNodesFile(customNodes, customNodeServerUrls) {
1134
+ /**
1135
+ * `emit.only`: the nodes of `custom-nodes-admin.js`, whose registry starts
1136
+ * from the shared module's so their nested calls still resolve.
1137
+ * `emit.exclude`: the nodes left out of the shared module. Every node is
1138
+ * emitted when `emit` is absent. `customNodes` is always the full set, so
1139
+ * nested lookups (segment state keys) see every node.
1140
+ */
1141
+ generateCustomNodesFile(customNodes, customNodeServerUrls, emit) {
1065
1142
  const functions = [];
1066
- for (const [id, cn] of Object.entries(customNodes)) {
1143
+ const emitted = Object.keys(customNodes).filter((id) => (!(emit === null || emit === void 0 ? void 0 : emit.only) || emit.only.has(id)) && !((emit === null || emit === void 0 ? void 0 : emit.exclude) && emit.exclude.has(id)));
1144
+ for (const id of emitted) {
1145
+ const cn = customNodes[id];
1067
1146
  const safeId = id.replace(/[^a-zA-Z0-9]/g, '_');
1068
1147
  // SECURITY: the custom-nodes file ships to the browser (imported as
1069
1148
  // `utils/workflows/custom-nodes`). Redact each server node's config down
@@ -1097,29 +1176,25 @@ ${entries}
1097
1176
  trigger: { type: 'manual' },
1098
1177
  };
1099
1178
  const cnSegments = (0, segment_splitter_1.splitIntoSegments)(pseudoWorkflow);
1100
- const segmentsJson = JSON.stringify(cnSegments.map((s) => ({
1101
- id: s.id,
1102
- env: s.env,
1103
- hasStreamingAI: (0, api_route_generator_1.hasStreamingAINode)(s),
1179
+ const segmentsJson = JSON.stringify(cnSegments.map((s) => (Object.assign(Object.assign({ id: s.id, env: s.env, hasStreamingAI: (0, api_route_generator_1.hasStreamingAINode)(s),
1104
1180
  // Every node in this segment runs fire-and-forget — dispatch it and
1105
1181
  // carry on instead of waiting for the database round trip.
1106
- fireAndForget: (0, await_result_1.isFireAndForgetSegment)(s),
1107
- nodes: s.nodes.map((n) => ({
1182
+ fireAndForget: (0, await_result_1.isFireAndForgetSegment)(s) }, (s.env === 'server'
1183
+ ? { stateKeys: (0, segment_context_needs_1.collectSegmentStateKeys)(s.nodes, customNodes) }
1184
+ : {})), { nodes: s.nodes.map((n) => ({
1108
1185
  id: n.id,
1109
1186
  type: n.type,
1110
1187
  config: (0, segment_splitter_1.redactServerNodeConfig)(n.config, s.env, n.type),
1111
1188
  stepNumber: n.stepNumber,
1112
1189
  label: n.label,
1113
- })),
1114
- edges: s.edges.map((e) => ({
1190
+ })), edges: s.edges.map((e) => ({
1115
1191
  id: e.id,
1116
1192
  source: e.source,
1117
1193
  target: e.target,
1118
1194
  sourceHandle: e.sourceHandle,
1119
1195
  targetHandle: e.targetHandle,
1120
1196
  data: e.data,
1121
- })),
1122
- })));
1197
+ })) }))));
1123
1198
  const serverUrlsJson = JSON.stringify(serverUrls);
1124
1199
  functions.push(`
1125
1200
  // Custom workflow node: ${cn.name || id}
@@ -1201,7 +1276,7 @@ async function customNode_${safeId}(outerContext, parameters, nodeHandlers) {
1201
1276
  // already moved past this point.
1202
1277
  __utils.registerPendingNodePromise(
1203
1278
  context,
1204
- __runtime.callServerSegment(segUrl, context).catch(function(__ffErr) {
1279
+ __runtime.callServerSegment(segUrl, context, seg.stateKeys).catch(function(__ffErr) {
1205
1280
  console.error('[workflow] Segment "' + seg.id + '" failed (not awaited):', __ffErr);
1206
1281
  })
1207
1282
  );
@@ -1215,10 +1290,10 @@ async function customNode_${safeId}(outerContext, parameters, nodeHandlers) {
1215
1290
  continue;
1216
1291
  }
1217
1292
  if (seg.hasStreamingAI) {
1218
- var streamHandled = await __runtime.callStreamingServerSegment(segUrl, context, streamingInfo, nodes, edges, nodeHandlers, wfConfig, executionId);
1293
+ var streamHandled = await __runtime.callStreamingServerSegment(segUrl, context, streamingInfo, nodes, edges, nodeHandlers, wfConfig, executionId, seg.stateKeys);
1219
1294
  Object.assign(handledNodeIds, streamHandled);
1220
1295
  } else {
1221
- var serverResults = await __runtime.callServerSegment(segUrl, context);
1296
+ var serverResults = await __runtime.callServerSegment(segUrl, context, seg.stateKeys);
1222
1297
  __runtime.mergeServerResults(context, serverResults);
1223
1298
  // Propagate non-taken if-statement branches from this server
1224
1299
  // segment into subsequent segments. Iterate every if-statement
@@ -1356,15 +1431,20 @@ async function customNode_${safeId}(outerContext, parameters, nodeHandlers) {
1356
1431
  }`);
1357
1432
  }
1358
1433
  }
1359
- const hasAnyServerSegments = Object.keys(customNodeServerUrls).length > 0;
1360
- const registryEntries = Object.keys(customNodes)
1434
+ const hasAnyServerSegments = emitted.some((id) => !!customNodeServerUrls[id] && Object.keys(customNodeServerUrls[id]).length > 0);
1435
+ const registryEntries = emitted
1361
1436
  .map((id) => `__customNodeRegistry['${id}'] = customNode_${id.replace(/[^a-zA-Z0-9]/g, '_')};`)
1362
1437
  .join('\n');
1438
+ const registryStart = (emit === null || emit === void 0 ? void 0 : emit.only)
1439
+ ? `// Loaded only by the pages that call these nodes. The registry starts from
1440
+ // the shared module's, so a nested call to a shared node still resolves.
1441
+ var __customNodeRegistry = Object.assign({}, require('./custom-nodes'));`
1442
+ : 'var __customNodeRegistry = {};';
1363
1443
  return `// Auto-generated custom workflow nodes
1364
1444
  var __utils = require('./runtime-utils');
1365
1445
  ${hasAnyServerSegments ? "var __runtime = require('./runtime');" : ''}
1366
1446
 
1367
- var __customNodeRegistry = {};
1447
+ ${registryStart}
1368
1448
  ${functions.join('\n')}
1369
1449
 
1370
1450
  ${registryEntries}
@@ -1476,10 +1556,40 @@ module.exports = __customNodeRegistry;
1476
1556
  },
1477
1557
  ],
1478
1558
  });
1559
+ // Subscriber-only pages: the entitlement query the middleware asks for
1560
+ // through pages/api/auth/subscriber-access.js, and that the workflow-route
1561
+ // guard requires directly. Emitted only when a page actually needs it.
1562
+ if ((0, subscriber_access_route_generator_1.hasSubscriberOnlyPages)(auth)) {
1563
+ files.set('auth-subscriber-access-helper', {
1564
+ path: ['utils', 'auth'],
1565
+ files: [
1566
+ {
1567
+ name: 'subscriber-access',
1568
+ fileType: teleport_types_1.FileType.JS,
1569
+ content: (0, subscriber_access_route_generator_1.generateSubscriberAccessHelperModule)({
1570
+ productDetails: (0, subscriber_access_route_generator_1.resolveProductDetailsRoute)(uidl),
1571
+ productPages: (0, subscriber_access_route_generator_1.resolveCustomProductPageRoutes)(uidl),
1572
+ }),
1573
+ },
1574
+ ],
1575
+ });
1576
+ files.set('auth-subscriber-access-route', {
1577
+ path: ['pages', 'api', 'auth'],
1578
+ files: [
1579
+ {
1580
+ name: 'subscriber-access',
1581
+ fileType: teleport_types_1.FileType.JS,
1582
+ content: (0, subscriber_access_route_generator_1.generateSubscriberAccessRoute)(),
1583
+ },
1584
+ ],
1585
+ });
1586
+ }
1479
1587
  const hasProtectedRoutes = (auth.pageProtection && Object.keys(auth.pageProtection).length > 0) ||
1480
1588
  (auth.folderProtection && Object.keys(auth.folderProtection).length > 0);
1481
1589
  if (hasProtectedRoutes) {
1482
- const middlewareCode = (0, auth_generator_1.generateMiddlewareFile)(auth);
1590
+ const middlewareCode = (0, auth_generator_1.generateMiddlewareFile)(auth, {
1591
+ subscriptionFallbackRoute: (0, subscriber_access_route_generator_1.resolveSubscriptionFallbackRoute)(uidl),
1592
+ });
1483
1593
  files.set('auth-middleware', {
1484
1594
  path: [],
1485
1595
  files: [
@@ -1596,7 +1706,7 @@ module.exports = __customNodeRegistry;
1596
1706
  }
1597
1707
  appFile.content = content;
1598
1708
  }
1599
- generateGlobalWorkflowsHook(workflows) {
1709
+ generateGlobalWorkflowsHook(workflows, customNodes) {
1600
1710
  const registrations = [];
1601
1711
  const handlerTypes = new Set();
1602
1712
  for (const wf of workflows) {
@@ -1697,7 +1807,7 @@ module.exports = __customNodeRegistry;
1697
1807
  // handler as a bare sibling statement inside `useGlobalWorkflows()`. Two
1698
1808
  // DIFFERENT node types are minified independently (each in its own
1699
1809
  // source file), so their real declared names can coincidentally collide —
1700
- // e.g. state-update-local-state and payment-cancel-plan can both
1810
+ // e.g. state-update-local-state and payment-refund can both
1701
1811
  // legitimately mangle down to the same short name. Declared as siblings
1702
1812
  // in one shared function body, the second declaration would silently
1703
1813
  // shadow the first, so BOTH map entries end up pointing at the SAME
@@ -1744,18 +1854,14 @@ ${workflows
1744
1854
  return ` const executeWorkflow_${safeId} = async function(triggerContext) {
1745
1855
  const wfConfig = {
1746
1856
  triggerNodeId: '${wf.trigger.nodeId}',
1747
- segments: ${JSON.stringify(segments.map((s) => ({
1748
- id: s.id,
1749
- env: s.env,
1750
- hasStreamingAI: (0, api_route_generator_1.hasStreamingAINode)(s),
1751
- nodes: s.nodes.map((n) => ({
1857
+ segments: ${JSON.stringify(segments.map((s) => (Object.assign(Object.assign({ id: s.id, env: s.env, hasStreamingAI: (0, api_route_generator_1.hasStreamingAINode)(s) }, (s.env === 'server'
1858
+ ? { stateKeys: (0, segment_context_needs_1.collectSegmentStateKeys)(s.nodes, customNodes) }
1859
+ : {})), { nodes: s.nodes.map((n) => ({
1752
1860
  id: n.id,
1753
1861
  type: n.type,
1754
1862
  config: n.config,
1755
1863
  stepNumber: n.stepNumber,
1756
- })),
1757
- edges: s.edges,
1758
- })))},
1864
+ })), edges: s.edges }))))},
1759
1865
  ${wf.errorHandler ? `errorHandlerNodeId: '${wf.errorHandler.nodeId}',` : ''}
1760
1866
  nodes: ${JSON.stringify(wf.nodes.map((n) => ({
1761
1867
  id: n.id,
@@ -1786,9 +1892,50 @@ NextWorkflowProjectPlugin.INLINE_HANDLED_NODE_TYPES = new Set([
1786
1892
  'general-loop',
1787
1893
  'general-parallel',
1788
1894
  ]);
1895
+ /**
1896
+ * Whether the app has routes that must tell this deployment's own server code
1897
+ * apart from a browser: workflow steps, data routes, invoices, payment
1898
+ * webhooks, authentication.
1899
+ */
1900
+ const hasServerRoutes = (uidl) => {
1901
+ var _a, _b, _c, _d;
1902
+ return Boolean(((_a = uidl.authentication) === null || _a === void 0 ? void 0 : _a.enabled) ||
1903
+ Object.keys(((_b = uidl.workflows) === null || _b === void 0 ? void 0 : _b.workflows) || {}).length > 0 ||
1904
+ Object.keys(((_c = uidl.workflows) === null || _c === void 0 ? void 0 : _c.customNodes) || {}).length > 0 ||
1905
+ Object.keys(uidl.dataSources || {}).length > 0 ||
1906
+ ((_d = uidl.invoiceSettings) === null || _d === void 0 ? void 0 : _d.enabled) ||
1907
+ uidl.ecommerceSettings);
1908
+ };
1909
+ /**
1910
+ * 32 random bytes as hex. NEXTAUTH_SECRET signs every session and is the app
1911
+ * secret server code presents to its own routes, so its default must never be
1912
+ * a value anyone can read in this file: a published constant let anyone mint
1913
+ * an admin session, or pass as the store's own server, on any project that
1914
+ * shipped it. The deploy worker still replaces the line with the project's
1915
+ * persisted secret (it upserts `NEXTAUTH_SECRET=` whatever its value); this
1916
+ * only decides what an exported or locally generated project starts with.
1917
+ * Web Crypto where the generator runs in a browser (the editor), Node's crypto
1918
+ * module otherwise.
1919
+ */
1920
+ const randomSecretHex = () => {
1921
+ const webCrypto = globalThis
1922
+ .crypto;
1923
+ if (webCrypto && typeof webCrypto.getRandomValues === 'function') {
1924
+ const bytes = webCrypto.getRandomValues(new Uint8Array(32));
1925
+ let hex = '';
1926
+ for (let i = 0; i < bytes.length; i++) {
1927
+ hex += (bytes[i] < 16 ? '0' : '') + bytes[i].toString(16);
1928
+ }
1929
+ return hex;
1930
+ }
1931
+ // tslint:disable-next-line:no-var-requires
1932
+ return require('crypto').randomBytes(32).toString('hex');
1933
+ };
1934
+ /** The literal default earlier generations wrote; the deploy worker treats it as unset. */
1935
+ const LEGACY_NEXTAUTH_SECRET = 'CHANGE_ME_TO_A_RANDOM_SECRET';
1789
1936
  const AUTH_ENV_DEFAULTS = {
1790
- NEXTAUTH_URL: 'http://localhost:3000',
1791
- NEXTAUTH_SECRET: 'CHANGE_ME_TO_A_RANDOM_SECRET',
1937
+ NEXTAUTH_URL: () => 'http://localhost:3000',
1938
+ NEXTAUTH_SECRET: randomSecretHex,
1792
1939
  };
1793
1940
  // The two stable CMS env keys (teleport-gui's CMS_ENV_URL / CMS_ENV_ACCESS_TOKEN).
1794
1941
  // Their `teleporthq.secrets.<name>` placeholder MUST survive to the deployed env
@@ -1847,9 +1994,12 @@ function resolveAuthEnvValue(key, value, preserveKeys) {
1847
1994
  // (or still-unresolved placeholder) auth key to its local default keeps the
1848
1995
  // value a valid origin; the deploy worker and the runtime request-derivation
1849
1996
  // (`absolutizeNextAuthUrl`) override it with the real one in production.
1997
+ // The constant earlier generations shipped as the secret, carried over from an
1998
+ // on-disk `.env` by the standalone harness, is no secret at all: replaced too.
1999
+ const isPublishedSecret = key === 'NEXTAUTH_SECRET' && value === LEGACY_NEXTAUTH_SECRET;
1850
2000
  if (Object.prototype.hasOwnProperty.call(AUTH_ENV_DEFAULTS, key) &&
1851
- (isSecretPlaceholder || isBlank)) {
1852
- return AUTH_ENV_DEFAULTS[key];
2001
+ (isSecretPlaceholder || isBlank || isPublishedSecret)) {
2002
+ return AUTH_ENV_DEFAULTS[key]();
1853
2003
  }
1854
2004
  if (isSecretPlaceholder) {
1855
2005
  // OAuth provider credential refs are PRESERVED so the deploy worker resolves