@tellescope/sdk 1.256.13 → 1.256.15

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 (352) hide show
  1. package/lib/cjs/tests/api_tests/auto_merge_form_submission.test.js +1 -1
  2. package/lib/cjs/tests/api_tests/auto_merge_form_submission.test.js.map +1 -1
  3. package/lib/cjs/tests/api_tests/enduser_observations_auto_review.test.d.ts +5 -0
  4. package/lib/cjs/tests/api_tests/enduser_observations_auto_review.test.d.ts.map +1 -0
  5. package/lib/cjs/tests/api_tests/enduser_observations_auto_review.test.js +388 -0
  6. package/lib/cjs/tests/api_tests/enduser_observations_auto_review.test.js.map +1 -0
  7. package/lib/cjs/tests/api_tests/integrations_redacted.test.js +3 -3
  8. package/lib/cjs/tests/api_tests/integrations_redacted.test.js.map +1 -1
  9. package/lib/cjs/tests/api_tests/organization_signup.test.d.ts +20 -0
  10. package/lib/cjs/tests/api_tests/organization_signup.test.d.ts.map +1 -0
  11. package/lib/cjs/tests/api_tests/organization_signup.test.js +272 -0
  12. package/lib/cjs/tests/api_tests/organization_signup.test.js.map +1 -0
  13. package/lib/cjs/tests/api_tests/purchase_made_trigger.test.d.ts.map +1 -1
  14. package/lib/cjs/tests/api_tests/purchase_made_trigger.test.js +103 -162
  15. package/lib/cjs/tests/api_tests/purchase_made_trigger.test.js.map +1 -1
  16. package/lib/cjs/tests/api_tests/security/F-0179-booking-info-idor-token-mint.test.d.ts +30 -0
  17. package/lib/cjs/tests/api_tests/security/F-0179-booking-info-idor-token-mint.test.d.ts.map +1 -0
  18. package/lib/cjs/tests/api_tests/security/F-0179-booking-info-idor-token-mint.test.js +336 -0
  19. package/lib/cjs/tests/api_tests/security/F-0179-booking-info-idor-token-mint.test.js.map +1 -0
  20. package/lib/cjs/tests/api_tests/security/F-0185-startlinktoken-enduser-staff-escalation.test.d.ts +6 -0
  21. package/lib/cjs/tests/api_tests/security/F-0185-startlinktoken-enduser-staff-escalation.test.d.ts.map +1 -0
  22. package/lib/cjs/tests/api_tests/security/F-0185-startlinktoken-enduser-staff-escalation.test.js +354 -0
  23. package/lib/cjs/tests/api_tests/security/F-0185-startlinktoken-enduser-staff-escalation.test.js.map +1 -0
  24. package/lib/cjs/tests/api_tests/security/F-0191-schema-adminonly-enforcement.test.d.ts +46 -0
  25. package/lib/cjs/tests/api_tests/security/F-0191-schema-adminonly-enforcement.test.d.ts.map +1 -0
  26. package/lib/cjs/tests/api_tests/security/F-0191-schema-adminonly-enforcement.test.js +389 -0
  27. package/lib/cjs/tests/api_tests/security/F-0191-schema-adminonly-enforcement.test.js.map +1 -0
  28. package/lib/cjs/tests/api_tests/security/F-0192-automated-actions-process-gate.test.d.ts +43 -0
  29. package/lib/cjs/tests/api_tests/security/F-0192-automated-actions-process-gate.test.d.ts.map +1 -0
  30. package/lib/cjs/tests/api_tests/security/F-0192-automated-actions-process-gate.test.js +324 -0
  31. package/lib/cjs/tests/api_tests/security/F-0192-automated-actions-process-gate.test.js.map +1 -0
  32. package/lib/cjs/tests/api_tests/security/F-0196-add-to-journey-foreign-enduserid.test.d.ts +43 -0
  33. package/lib/cjs/tests/api_tests/security/F-0196-add-to-journey-foreign-enduserid.test.d.ts.map +1 -0
  34. package/lib/cjs/tests/api_tests/security/F-0196-add-to-journey-foreign-enduserid.test.js +282 -0
  35. package/lib/cjs/tests/api_tests/security/F-0196-add-to-journey-foreign-enduserid.test.js.map +1 -0
  36. package/lib/cjs/tests/api_tests/security/F-0200-form-logic-js-execution.test.d.ts +33 -0
  37. package/lib/cjs/tests/api_tests/security/F-0200-form-logic-js-execution.test.d.ts.map +1 -0
  38. package/lib/cjs/tests/api_tests/security/F-0200-form-logic-js-execution.test.js +249 -0
  39. package/lib/cjs/tests/api_tests/security/F-0200-form-logic-js-execution.test.js.map +1 -0
  40. package/lib/cjs/tests/api_tests/security/add-to-journey-foreign-enduserid.test.d.ts +42 -0
  41. package/lib/cjs/tests/api_tests/security/add-to-journey-foreign-enduserid.test.d.ts.map +1 -0
  42. package/lib/cjs/tests/api_tests/security/add-to-journey-foreign-enduserid.test.js +281 -0
  43. package/lib/cjs/tests/api_tests/security/add-to-journey-foreign-enduserid.test.js.map +1 -0
  44. package/lib/cjs/tests/api_tests/security/ai-conversations-rbac.test.d.ts +38 -0
  45. package/lib/cjs/tests/api_tests/security/ai-conversations-rbac.test.d.ts.map +1 -0
  46. package/lib/cjs/tests/api_tests/security/ai-conversations-rbac.test.js +390 -0
  47. package/lib/cjs/tests/api_tests/security/ai-conversations-rbac.test.js.map +1 -0
  48. package/lib/cjs/tests/api_tests/security/allowed-paths-confinement.test.d.ts +6 -0
  49. package/lib/cjs/tests/api_tests/security/allowed-paths-confinement.test.d.ts.map +1 -0
  50. package/lib/cjs/tests/api_tests/security/allowed-paths-confinement.test.js +1003 -0
  51. package/lib/cjs/tests/api_tests/security/allowed-paths-confinement.test.js.map +1 -0
  52. package/lib/cjs/tests/api_tests/security/automated-actions-process-gate.test.d.ts +42 -0
  53. package/lib/cjs/tests/api_tests/security/automated-actions-process-gate.test.d.ts.map +1 -0
  54. package/lib/cjs/tests/api_tests/security/automated-actions-process-gate.test.js +323 -0
  55. package/lib/cjs/tests/api_tests/security/automated-actions-process-gate.test.js.map +1 -0
  56. package/lib/cjs/tests/api_tests/security/booking-info-idor-token-mint.test.d.ts +29 -0
  57. package/lib/cjs/tests/api_tests/security/booking-info-idor-token-mint.test.d.ts.map +1 -0
  58. package/lib/cjs/tests/api_tests/security/booking-info-idor-token-mint.test.js +335 -0
  59. package/lib/cjs/tests/api_tests/security/booking-info-idor-token-mint.test.js.map +1 -0
  60. package/lib/cjs/tests/api_tests/security/cascade-role-rename-cross-tenant.test.d.ts +32 -0
  61. package/lib/cjs/tests/api_tests/security/cascade-role-rename-cross-tenant.test.d.ts.map +1 -0
  62. package/lib/cjs/tests/api_tests/security/cascade-role-rename-cross-tenant.test.js +237 -0
  63. package/lib/cjs/tests/api_tests/security/cascade-role-rename-cross-tenant.test.js.map +1 -0
  64. package/lib/cjs/tests/api_tests/security/data-sync-redaction-bypass.test.d.ts +28 -0
  65. package/lib/cjs/tests/api_tests/security/data-sync-redaction-bypass.test.d.ts.map +1 -0
  66. package/lib/cjs/tests/api_tests/security/data-sync-redaction-bypass.test.js +349 -0
  67. package/lib/cjs/tests/api_tests/security/data-sync-redaction-bypass.test.js.map +1 -0
  68. package/lib/cjs/tests/api_tests/security/develop-health-benefit-verification-rbac.test.d.ts +30 -0
  69. package/lib/cjs/tests/api_tests/security/develop-health-benefit-verification-rbac.test.d.ts.map +1 -0
  70. package/lib/cjs/tests/api_tests/security/develop-health-benefit-verification-rbac.test.js +314 -0
  71. package/lib/cjs/tests/api_tests/security/develop-health-benefit-verification-rbac.test.js.map +1 -0
  72. package/lib/cjs/tests/api_tests/security/enduser-cross-create.test.d.ts +21 -0
  73. package/lib/cjs/tests/api_tests/security/enduser-cross-create.test.d.ts.map +1 -0
  74. package/lib/cjs/tests/api_tests/security/enduser-cross-create.test.js +362 -0
  75. package/lib/cjs/tests/api_tests/security/enduser-cross-create.test.js.map +1 -0
  76. package/lib/cjs/tests/api_tests/security/enduser-write-restrictions.test.d.ts +21 -0
  77. package/lib/cjs/tests/api_tests/security/enduser-write-restrictions.test.d.ts.map +1 -0
  78. package/lib/cjs/tests/api_tests/security/enduser-write-restrictions.test.js +366 -0
  79. package/lib/cjs/tests/api_tests/security/enduser-write-restrictions.test.js.map +1 -0
  80. package/lib/cjs/tests/api_tests/security/form-logic-js-execution.test.d.ts +32 -0
  81. package/lib/cjs/tests/api_tests/security/form-logic-js-execution.test.d.ts.map +1 -0
  82. package/lib/cjs/tests/api_tests/security/form-logic-js-execution.test.js +248 -0
  83. package/lib/cjs/tests/api_tests/security/form-logic-js-execution.test.js.map +1 -0
  84. package/lib/cjs/tests/api_tests/security/globalunique-conflict-redaction.test.d.ts +19 -0
  85. package/lib/cjs/tests/api_tests/security/globalunique-conflict-redaction.test.d.ts.map +1 -0
  86. package/lib/cjs/tests/api_tests/security/globalunique-conflict-redaction.test.js +138 -0
  87. package/lib/cjs/tests/api_tests/security/globalunique-conflict-redaction.test.js.map +1 -0
  88. package/lib/cjs/tests/api_tests/security/handle-incoming-communication-cross-tenant.test.d.ts +24 -0
  89. package/lib/cjs/tests/api_tests/security/handle-incoming-communication-cross-tenant.test.d.ts.map +1 -0
  90. package/lib/cjs/tests/api_tests/security/handle-incoming-communication-cross-tenant.test.js +201 -0
  91. package/lib/cjs/tests/api_tests/security/handle-incoming-communication-cross-tenant.test.js.map +1 -0
  92. package/lib/cjs/tests/api_tests/security/invite-user-enumeration.test.d.ts +29 -0
  93. package/lib/cjs/tests/api_tests/security/invite-user-enumeration.test.d.ts.map +1 -0
  94. package/lib/cjs/tests/api_tests/security/invite-user-enumeration.test.js +278 -0
  95. package/lib/cjs/tests/api_tests/security/invite-user-enumeration.test.js.map +1 -0
  96. package/lib/cjs/tests/api_tests/security/load-inbox-redaction.test.d.ts +17 -0
  97. package/lib/cjs/tests/api_tests/security/load-inbox-redaction.test.d.ts.map +1 -0
  98. package/lib/cjs/tests/api_tests/security/load-inbox-redaction.test.js +155 -0
  99. package/lib/cjs/tests/api_tests/security/load-inbox-redaction.test.js.map +1 -0
  100. package/lib/cjs/tests/api_tests/security/prototype-pollution.test.d.ts +2 -0
  101. package/lib/cjs/tests/api_tests/security/prototype-pollution.test.d.ts.map +1 -0
  102. package/lib/cjs/tests/api_tests/security/prototype-pollution.test.js +88 -0
  103. package/lib/cjs/tests/api_tests/security/prototype-pollution.test.js.map +1 -0
  104. package/lib/cjs/tests/api_tests/security/proxy-image-unauth-ssrf.test.d.ts +34 -0
  105. package/lib/cjs/tests/api_tests/security/proxy-image-unauth-ssrf.test.d.ts.map +1 -0
  106. package/lib/cjs/tests/api_tests/security/proxy-image-unauth-ssrf.test.js +230 -0
  107. package/lib/cjs/tests/api_tests/security/proxy-image-unauth-ssrf.test.js.map +1 -0
  108. package/lib/cjs/tests/api_tests/security/sanitize-user-html-with-iframes.test.d.ts +2 -0
  109. package/lib/cjs/tests/api_tests/security/sanitize-user-html-with-iframes.test.d.ts.map +1 -0
  110. package/lib/cjs/tests/api_tests/security/sanitize-user-html-with-iframes.test.js +242 -0
  111. package/lib/cjs/tests/api_tests/security/sanitize-user-html-with-iframes.test.js.map +1 -0
  112. package/lib/cjs/tests/api_tests/security/sanitize-user-html.test.d.ts +2 -0
  113. package/lib/cjs/tests/api_tests/security/sanitize-user-html.test.d.ts.map +1 -0
  114. package/lib/cjs/tests/api_tests/security/sanitize-user-html.test.js +148 -0
  115. package/lib/cjs/tests/api_tests/security/sanitize-user-html.test.js.map +1 -0
  116. package/lib/cjs/tests/api_tests/security/schema-adminonly-enforcement.test.d.ts +45 -0
  117. package/lib/cjs/tests/api_tests/security/schema-adminonly-enforcement.test.d.ts.map +1 -0
  118. package/lib/cjs/tests/api_tests/security/schema-adminonly-enforcement.test.js +388 -0
  119. package/lib/cjs/tests/api_tests/security/schema-adminonly-enforcement.test.js.map +1 -0
  120. package/lib/cjs/tests/api_tests/security/self-admin-role-assignment.test.d.ts +38 -0
  121. package/lib/cjs/tests/api_tests/security/self-admin-role-assignment.test.d.ts.map +1 -0
  122. package/lib/cjs/tests/api_tests/security/self-admin-role-assignment.test.js +222 -0
  123. package/lib/cjs/tests/api_tests/security/self-admin-role-assignment.test.js.map +1 -0
  124. package/lib/cjs/tests/api_tests/security/startlinktoken-enduser-staff-escalation.test.d.ts +6 -0
  125. package/lib/cjs/tests/api_tests/security/startlinktoken-enduser-staff-escalation.test.d.ts.map +1 -0
  126. package/lib/cjs/tests/api_tests/security/startlinktoken-enduser-staff-escalation.test.js +354 -0
  127. package/lib/cjs/tests/api_tests/security/startlinktoken-enduser-staff-escalation.test.js.map +1 -0
  128. package/lib/cjs/tests/api_tests/security/webhook-outbound-ssrf.test.d.ts +28 -0
  129. package/lib/cjs/tests/api_tests/security/webhook-outbound-ssrf.test.d.ts.map +1 -0
  130. package/lib/cjs/tests/api_tests/security/webhook-outbound-ssrf.test.js +442 -0
  131. package/lib/cjs/tests/api_tests/security/webhook-outbound-ssrf.test.js.map +1 -0
  132. package/lib/cjs/tests/api_tests/security/webhook-timeout.test.d.ts +19 -0
  133. package/lib/cjs/tests/api_tests/security/webhook-timeout.test.d.ts.map +1 -0
  134. package/lib/cjs/tests/api_tests/security/webhook-timeout.test.js +156 -0
  135. package/lib/cjs/tests/api_tests/security/webhook-timeout.test.js.map +1 -0
  136. package/lib/cjs/tests/api_tests/tickets_bulk_assign_from_queue.test.d.ts +5 -0
  137. package/lib/cjs/tests/api_tests/tickets_bulk_assign_from_queue.test.d.ts.map +1 -0
  138. package/lib/cjs/tests/api_tests/tickets_bulk_assign_from_queue.test.js +329 -0
  139. package/lib/cjs/tests/api_tests/tickets_bulk_assign_from_queue.test.js.map +1 -0
  140. package/lib/cjs/tests/api_tests/webhook_error_handling.test.js +2 -2
  141. package/lib/cjs/tests/api_tests/webhook_error_handling.test.js.map +1 -1
  142. package/lib/cjs/tests/setup_isolated.d.ts +68 -0
  143. package/lib/cjs/tests/setup_isolated.d.ts.map +1 -0
  144. package/lib/cjs/tests/setup_isolated.js +232 -0
  145. package/lib/cjs/tests/setup_isolated.js.map +1 -0
  146. package/lib/cjs/tests/tests.d.ts.map +1 -1
  147. package/lib/cjs/tests/tests.js +287 -227
  148. package/lib/cjs/tests/tests.js.map +1 -1
  149. package/lib/cjs/tests/unit_tests/do_not_send_address.test.d.ts +2 -0
  150. package/lib/cjs/tests/unit_tests/do_not_send_address.test.d.ts.map +1 -0
  151. package/lib/cjs/tests/unit_tests/do_not_send_address.test.js +89 -0
  152. package/lib/cjs/tests/unit_tests/do_not_send_address.test.js.map +1 -0
  153. package/lib/cjs/tests/unit_tests/openapi_spec_freshness.test.d.ts +17 -0
  154. package/lib/cjs/tests/unit_tests/openapi_spec_freshness.test.d.ts.map +1 -0
  155. package/lib/cjs/tests/unit_tests/openapi_spec_freshness.test.js +140 -0
  156. package/lib/cjs/tests/unit_tests/openapi_spec_freshness.test.js.map +1 -0
  157. package/lib/cjs/tsconfig.cjs.tsbuildinfo +1 -0
  158. package/lib/esm/tests/api_tests/auto_merge_form_submission.test.js +1 -1
  159. package/lib/esm/tests/api_tests/auto_merge_form_submission.test.js.map +1 -1
  160. package/lib/esm/tests/api_tests/enduser_observations_auto_review.test.d.ts +5 -0
  161. package/lib/esm/tests/api_tests/enduser_observations_auto_review.test.d.ts.map +1 -0
  162. package/lib/esm/tests/api_tests/enduser_observations_auto_review.test.js +383 -0
  163. package/lib/esm/tests/api_tests/enduser_observations_auto_review.test.js.map +1 -0
  164. package/lib/esm/tests/api_tests/integrations_redacted.test.js +3 -3
  165. package/lib/esm/tests/api_tests/integrations_redacted.test.js.map +1 -1
  166. package/lib/esm/tests/api_tests/organization_signup.test.d.ts +20 -0
  167. package/lib/esm/tests/api_tests/organization_signup.test.d.ts.map +1 -0
  168. package/lib/esm/tests/api_tests/organization_signup.test.js +264 -0
  169. package/lib/esm/tests/api_tests/organization_signup.test.js.map +1 -0
  170. package/lib/esm/tests/api_tests/purchase_made_trigger.test.d.ts.map +1 -1
  171. package/lib/esm/tests/api_tests/purchase_made_trigger.test.js +104 -163
  172. package/lib/esm/tests/api_tests/purchase_made_trigger.test.js.map +1 -1
  173. package/lib/esm/tests/api_tests/security/F-0179-booking-info-idor-token-mint.test.d.ts +30 -0
  174. package/lib/esm/tests/api_tests/security/F-0179-booking-info-idor-token-mint.test.d.ts.map +1 -0
  175. package/lib/esm/tests/api_tests/security/F-0179-booking-info-idor-token-mint.test.js +332 -0
  176. package/lib/esm/tests/api_tests/security/F-0179-booking-info-idor-token-mint.test.js.map +1 -0
  177. package/lib/esm/tests/api_tests/security/F-0185-startlinktoken-enduser-staff-escalation.test.d.ts +6 -0
  178. package/lib/esm/tests/api_tests/security/F-0185-startlinktoken-enduser-staff-escalation.test.d.ts.map +1 -0
  179. package/lib/esm/tests/api_tests/security/F-0185-startlinktoken-enduser-staff-escalation.test.js +350 -0
  180. package/lib/esm/tests/api_tests/security/F-0185-startlinktoken-enduser-staff-escalation.test.js.map +1 -0
  181. package/lib/esm/tests/api_tests/security/F-0191-schema-adminonly-enforcement.test.d.ts +46 -0
  182. package/lib/esm/tests/api_tests/security/F-0191-schema-adminonly-enforcement.test.d.ts.map +1 -0
  183. package/lib/esm/tests/api_tests/security/F-0191-schema-adminonly-enforcement.test.js +382 -0
  184. package/lib/esm/tests/api_tests/security/F-0191-schema-adminonly-enforcement.test.js.map +1 -0
  185. package/lib/esm/tests/api_tests/security/F-0192-automated-actions-process-gate.test.d.ts +43 -0
  186. package/lib/esm/tests/api_tests/security/F-0192-automated-actions-process-gate.test.d.ts.map +1 -0
  187. package/lib/esm/tests/api_tests/security/F-0192-automated-actions-process-gate.test.js +317 -0
  188. package/lib/esm/tests/api_tests/security/F-0192-automated-actions-process-gate.test.js.map +1 -0
  189. package/lib/esm/tests/api_tests/security/F-0196-add-to-journey-foreign-enduserid.test.d.ts +43 -0
  190. package/lib/esm/tests/api_tests/security/F-0196-add-to-journey-foreign-enduserid.test.d.ts.map +1 -0
  191. package/lib/esm/tests/api_tests/security/F-0196-add-to-journey-foreign-enduserid.test.js +277 -0
  192. package/lib/esm/tests/api_tests/security/F-0196-add-to-journey-foreign-enduserid.test.js.map +1 -0
  193. package/lib/esm/tests/api_tests/security/F-0200-form-logic-js-execution.test.d.ts +33 -0
  194. package/lib/esm/tests/api_tests/security/F-0200-form-logic-js-execution.test.d.ts.map +1 -0
  195. package/lib/esm/tests/api_tests/security/F-0200-form-logic-js-execution.test.js +244 -0
  196. package/lib/esm/tests/api_tests/security/F-0200-form-logic-js-execution.test.js.map +1 -0
  197. package/lib/esm/tests/api_tests/security/add-to-journey-foreign-enduserid.test.d.ts +42 -0
  198. package/lib/esm/tests/api_tests/security/add-to-journey-foreign-enduserid.test.d.ts.map +1 -0
  199. package/lib/esm/tests/api_tests/security/add-to-journey-foreign-enduserid.test.js +276 -0
  200. package/lib/esm/tests/api_tests/security/add-to-journey-foreign-enduserid.test.js.map +1 -0
  201. package/lib/esm/tests/api_tests/security/ai-conversations-rbac.test.d.ts +38 -0
  202. package/lib/esm/tests/api_tests/security/ai-conversations-rbac.test.d.ts.map +1 -0
  203. package/lib/esm/tests/api_tests/security/ai-conversations-rbac.test.js +386 -0
  204. package/lib/esm/tests/api_tests/security/ai-conversations-rbac.test.js.map +1 -0
  205. package/lib/esm/tests/api_tests/security/allowed-paths-confinement.test.d.ts +6 -0
  206. package/lib/esm/tests/api_tests/security/allowed-paths-confinement.test.d.ts.map +1 -0
  207. package/lib/esm/tests/api_tests/security/allowed-paths-confinement.test.js +996 -0
  208. package/lib/esm/tests/api_tests/security/allowed-paths-confinement.test.js.map +1 -0
  209. package/lib/esm/tests/api_tests/security/automated-actions-process-gate.test.d.ts +42 -0
  210. package/lib/esm/tests/api_tests/security/automated-actions-process-gate.test.d.ts.map +1 -0
  211. package/lib/esm/tests/api_tests/security/automated-actions-process-gate.test.js +316 -0
  212. package/lib/esm/tests/api_tests/security/automated-actions-process-gate.test.js.map +1 -0
  213. package/lib/esm/tests/api_tests/security/booking-info-idor-token-mint.test.d.ts +29 -0
  214. package/lib/esm/tests/api_tests/security/booking-info-idor-token-mint.test.d.ts.map +1 -0
  215. package/lib/esm/tests/api_tests/security/booking-info-idor-token-mint.test.js +331 -0
  216. package/lib/esm/tests/api_tests/security/booking-info-idor-token-mint.test.js.map +1 -0
  217. package/lib/esm/tests/api_tests/security/cascade-role-rename-cross-tenant.test.d.ts +32 -0
  218. package/lib/esm/tests/api_tests/security/cascade-role-rename-cross-tenant.test.d.ts.map +1 -0
  219. package/lib/esm/tests/api_tests/security/cascade-role-rename-cross-tenant.test.js +233 -0
  220. package/lib/esm/tests/api_tests/security/cascade-role-rename-cross-tenant.test.js.map +1 -0
  221. package/lib/esm/tests/api_tests/security/data-sync-redaction-bypass.test.d.ts +28 -0
  222. package/lib/esm/tests/api_tests/security/data-sync-redaction-bypass.test.d.ts.map +1 -0
  223. package/lib/esm/tests/api_tests/security/data-sync-redaction-bypass.test.js +345 -0
  224. package/lib/esm/tests/api_tests/security/data-sync-redaction-bypass.test.js.map +1 -0
  225. package/lib/esm/tests/api_tests/security/develop-health-benefit-verification-rbac.test.d.ts +30 -0
  226. package/lib/esm/tests/api_tests/security/develop-health-benefit-verification-rbac.test.d.ts.map +1 -0
  227. package/lib/esm/tests/api_tests/security/develop-health-benefit-verification-rbac.test.js +310 -0
  228. package/lib/esm/tests/api_tests/security/develop-health-benefit-verification-rbac.test.js.map +1 -0
  229. package/lib/esm/tests/api_tests/security/enduser-cross-create.test.d.ts +21 -0
  230. package/lib/esm/tests/api_tests/security/enduser-cross-create.test.d.ts.map +1 -0
  231. package/lib/esm/tests/api_tests/security/enduser-cross-create.test.js +358 -0
  232. package/lib/esm/tests/api_tests/security/enduser-cross-create.test.js.map +1 -0
  233. package/lib/esm/tests/api_tests/security/enduser-write-restrictions.test.d.ts +21 -0
  234. package/lib/esm/tests/api_tests/security/enduser-write-restrictions.test.d.ts.map +1 -0
  235. package/lib/esm/tests/api_tests/security/enduser-write-restrictions.test.js +362 -0
  236. package/lib/esm/tests/api_tests/security/enduser-write-restrictions.test.js.map +1 -0
  237. package/lib/esm/tests/api_tests/security/form-logic-js-execution.test.d.ts +32 -0
  238. package/lib/esm/tests/api_tests/security/form-logic-js-execution.test.d.ts.map +1 -0
  239. package/lib/esm/tests/api_tests/security/form-logic-js-execution.test.js +243 -0
  240. package/lib/esm/tests/api_tests/security/form-logic-js-execution.test.js.map +1 -0
  241. package/lib/esm/tests/api_tests/security/globalunique-conflict-redaction.test.d.ts +19 -0
  242. package/lib/esm/tests/api_tests/security/globalunique-conflict-redaction.test.d.ts.map +1 -0
  243. package/lib/esm/tests/api_tests/security/globalunique-conflict-redaction.test.js +134 -0
  244. package/lib/esm/tests/api_tests/security/globalunique-conflict-redaction.test.js.map +1 -0
  245. package/lib/esm/tests/api_tests/security/handle-incoming-communication-cross-tenant.test.d.ts +24 -0
  246. package/lib/esm/tests/api_tests/security/handle-incoming-communication-cross-tenant.test.d.ts.map +1 -0
  247. package/lib/esm/tests/api_tests/security/handle-incoming-communication-cross-tenant.test.js +194 -0
  248. package/lib/esm/tests/api_tests/security/handle-incoming-communication-cross-tenant.test.js.map +1 -0
  249. package/lib/esm/tests/api_tests/security/invite-user-enumeration.test.d.ts +29 -0
  250. package/lib/esm/tests/api_tests/security/invite-user-enumeration.test.d.ts.map +1 -0
  251. package/lib/esm/tests/api_tests/security/invite-user-enumeration.test.js +271 -0
  252. package/lib/esm/tests/api_tests/security/invite-user-enumeration.test.js.map +1 -0
  253. package/lib/esm/tests/api_tests/security/load-inbox-redaction.test.d.ts +17 -0
  254. package/lib/esm/tests/api_tests/security/load-inbox-redaction.test.d.ts.map +1 -0
  255. package/lib/esm/tests/api_tests/security/load-inbox-redaction.test.js +151 -0
  256. package/lib/esm/tests/api_tests/security/load-inbox-redaction.test.js.map +1 -0
  257. package/lib/esm/tests/api_tests/security/prototype-pollution.test.d.ts +2 -0
  258. package/lib/esm/tests/api_tests/security/prototype-pollution.test.d.ts.map +1 -0
  259. package/lib/esm/tests/api_tests/security/prototype-pollution.test.js +84 -0
  260. package/lib/esm/tests/api_tests/security/prototype-pollution.test.js.map +1 -0
  261. package/lib/esm/tests/api_tests/security/proxy-image-unauth-ssrf.test.d.ts +34 -0
  262. package/lib/esm/tests/api_tests/security/proxy-image-unauth-ssrf.test.d.ts.map +1 -0
  263. package/lib/esm/tests/api_tests/security/proxy-image-unauth-ssrf.test.js +223 -0
  264. package/lib/esm/tests/api_tests/security/proxy-image-unauth-ssrf.test.js.map +1 -0
  265. package/lib/esm/tests/api_tests/security/sanitize-user-html-with-iframes.test.d.ts +2 -0
  266. package/lib/esm/tests/api_tests/security/sanitize-user-html-with-iframes.test.d.ts.map +1 -0
  267. package/lib/esm/tests/api_tests/security/sanitize-user-html-with-iframes.test.js +238 -0
  268. package/lib/esm/tests/api_tests/security/sanitize-user-html-with-iframes.test.js.map +1 -0
  269. package/lib/esm/tests/api_tests/security/sanitize-user-html.test.d.ts +2 -0
  270. package/lib/esm/tests/api_tests/security/sanitize-user-html.test.d.ts.map +1 -0
  271. package/lib/esm/tests/api_tests/security/sanitize-user-html.test.js +144 -0
  272. package/lib/esm/tests/api_tests/security/sanitize-user-html.test.js.map +1 -0
  273. package/lib/esm/tests/api_tests/security/schema-adminonly-enforcement.test.d.ts +45 -0
  274. package/lib/esm/tests/api_tests/security/schema-adminonly-enforcement.test.d.ts.map +1 -0
  275. package/lib/esm/tests/api_tests/security/schema-adminonly-enforcement.test.js +381 -0
  276. package/lib/esm/tests/api_tests/security/schema-adminonly-enforcement.test.js.map +1 -0
  277. package/lib/esm/tests/api_tests/security/self-admin-role-assignment.test.d.ts +38 -0
  278. package/lib/esm/tests/api_tests/security/self-admin-role-assignment.test.d.ts.map +1 -0
  279. package/lib/esm/tests/api_tests/security/self-admin-role-assignment.test.js +218 -0
  280. package/lib/esm/tests/api_tests/security/self-admin-role-assignment.test.js.map +1 -0
  281. package/lib/esm/tests/api_tests/security/startlinktoken-enduser-staff-escalation.test.d.ts +6 -0
  282. package/lib/esm/tests/api_tests/security/startlinktoken-enduser-staff-escalation.test.d.ts.map +1 -0
  283. package/lib/esm/tests/api_tests/security/startlinktoken-enduser-staff-escalation.test.js +350 -0
  284. package/lib/esm/tests/api_tests/security/startlinktoken-enduser-staff-escalation.test.js.map +1 -0
  285. package/lib/esm/tests/api_tests/security/webhook-outbound-ssrf.test.d.ts +28 -0
  286. package/lib/esm/tests/api_tests/security/webhook-outbound-ssrf.test.d.ts.map +1 -0
  287. package/lib/esm/tests/api_tests/security/webhook-outbound-ssrf.test.js +435 -0
  288. package/lib/esm/tests/api_tests/security/webhook-outbound-ssrf.test.js.map +1 -0
  289. package/lib/esm/tests/api_tests/security/webhook-timeout.test.d.ts +19 -0
  290. package/lib/esm/tests/api_tests/security/webhook-timeout.test.d.ts.map +1 -0
  291. package/lib/esm/tests/api_tests/security/webhook-timeout.test.js +149 -0
  292. package/lib/esm/tests/api_tests/security/webhook-timeout.test.js.map +1 -0
  293. package/lib/esm/tests/api_tests/tickets_bulk_assign_from_queue.test.d.ts +5 -0
  294. package/lib/esm/tests/api_tests/tickets_bulk_assign_from_queue.test.d.ts.map +1 -0
  295. package/lib/esm/tests/api_tests/tickets_bulk_assign_from_queue.test.js +324 -0
  296. package/lib/esm/tests/api_tests/tickets_bulk_assign_from_queue.test.js.map +1 -0
  297. package/lib/esm/tests/api_tests/webhook_error_handling.test.js +2 -2
  298. package/lib/esm/tests/api_tests/webhook_error_handling.test.js.map +1 -1
  299. package/lib/esm/tests/setup_isolated.d.ts +68 -0
  300. package/lib/esm/tests/setup_isolated.d.ts.map +1 -0
  301. package/lib/esm/tests/setup_isolated.js +221 -0
  302. package/lib/esm/tests/setup_isolated.js.map +1 -0
  303. package/lib/esm/tests/tests.d.ts.map +1 -1
  304. package/lib/esm/tests/tests.js +287 -227
  305. package/lib/esm/tests/tests.js.map +1 -1
  306. package/lib/esm/tests/unit_tests/do_not_send_address.test.d.ts +2 -0
  307. package/lib/esm/tests/unit_tests/do_not_send_address.test.d.ts.map +1 -0
  308. package/lib/esm/tests/unit_tests/do_not_send_address.test.js +85 -0
  309. package/lib/esm/tests/unit_tests/do_not_send_address.test.js.map +1 -0
  310. package/lib/esm/tests/unit_tests/openapi_spec_freshness.test.d.ts +17 -0
  311. package/lib/esm/tests/unit_tests/openapi_spec_freshness.test.d.ts.map +1 -0
  312. package/lib/esm/tests/unit_tests/openapi_spec_freshness.test.js +113 -0
  313. package/lib/esm/tests/unit_tests/openapi_spec_freshness.test.js.map +1 -0
  314. package/lib/tsconfig.tsbuildinfo +1 -1
  315. package/package.json +10 -10
  316. package/src/tests/api_tests/auto_merge_form_submission.test.ts +1 -1
  317. package/src/tests/api_tests/enduser_observations_auto_review.test.ts +358 -0
  318. package/src/tests/api_tests/integrations_redacted.test.ts +1 -1
  319. package/src/tests/api_tests/organization_signup.test.ts +240 -0
  320. package/src/tests/api_tests/purchase_made_trigger.test.ts +29 -41
  321. package/src/tests/api_tests/security/add-to-journey-foreign-enduserid.test.ts +207 -0
  322. package/src/tests/api_tests/security/{F-0005-ai-conversations-rbac.test.ts → ai-conversations-rbac.test.ts} +14 -14
  323. package/src/tests/api_tests/security/{F-0166-allowed-paths-wildcard-bypass.test.ts → allowed-paths-confinement.test.ts} +11 -11
  324. package/src/tests/api_tests/security/automated-actions-process-gate.test.ts +237 -0
  325. package/src/tests/api_tests/security/booking-info-idor-token-mint.test.ts +224 -0
  326. package/src/tests/api_tests/security/{F-0053-cascade-role-rename-cross-tenant.test.ts → cascade-role-rename-cross-tenant.test.ts} +10 -10
  327. package/src/tests/api_tests/security/{F-0001-data-sync-redaction-bypass.test.ts → data-sync-redaction-bypass.test.ts} +9 -9
  328. package/src/tests/api_tests/security/{F-0006-develop-health-benefit-verification-rbac.test.ts → develop-health-benefit-verification-rbac.test.ts} +7 -8
  329. package/src/tests/api_tests/security/{F-0116-F-0119-enduser-cross-create.test.ts → enduser-cross-create.test.ts} +25 -25
  330. package/src/tests/api_tests/security/{F-0106-F-0110-enduser-write-restrictions.test.ts → enduser-write-restrictions.test.ts} +12 -14
  331. package/src/tests/api_tests/security/form-logic-js-execution.test.ts +183 -0
  332. package/src/tests/api_tests/security/{F-0145-globalunique-leak.test.ts → globalunique-conflict-redaction.test.ts} +5 -6
  333. package/src/tests/api_tests/security/{F-0008-handle-incoming-communication-cross-tenant.test.ts → handle-incoming-communication-cross-tenant.test.ts} +8 -8
  334. package/src/tests/api_tests/security/{F-0007-invite-user-enumeration.test.ts → invite-user-enumeration.test.ts} +8 -8
  335. package/src/tests/api_tests/security/{F-0151-load-inbox-redaction.test.ts → load-inbox-redaction.test.ts} +5 -6
  336. package/src/tests/api_tests/security/{F-0016-prototype-pollution.test.ts → prototype-pollution.test.ts} +4 -4
  337. package/src/tests/api_tests/security/{F-0025-proxy-image-unauth-ssrf.test.ts → proxy-image-unauth-ssrf.test.ts} +11 -12
  338. package/src/tests/api_tests/security/{F-0013-sanitize-user-html-with-iframes.test.ts → sanitize-user-html-with-iframes.test.ts} +5 -5
  339. package/src/tests/api_tests/security/{F-0013-sanitize-user-html.test.ts → sanitize-user-html.test.ts} +4 -4
  340. package/src/tests/api_tests/security/schema-adminonly-enforcement.test.ts +287 -0
  341. package/src/tests/api_tests/security/{F-0076-self-admin-role-assignment.test.ts → self-admin-role-assignment.test.ts} +13 -13
  342. package/src/tests/api_tests/security/startlinktoken-enduser-staff-escalation.test.ts +162 -0
  343. package/src/tests/api_tests/security/{F-0015-webhook-outbound-ssrf.test.ts → webhook-outbound-ssrf.test.ts} +13 -14
  344. package/src/tests/api_tests/security/{F-0155-webhook-timeout.test.ts → webhook-timeout.test.ts} +6 -7
  345. package/src/tests/api_tests/tickets_bulk_assign_from_queue.test.ts +279 -0
  346. package/src/tests/api_tests/webhook_error_handling.test.ts +1 -1
  347. package/src/tests/setup_isolated.ts +170 -0
  348. package/src/tests/tests.ts +60 -18
  349. package/src/tests/unit_tests/do_not_send_address.test.ts +60 -0
  350. package/src/tests/unit_tests/openapi_spec_freshness.test.ts +88 -0
  351. package/test_generated.pdf +0 -0
  352. package/src/tests/api_tests/security/readonly-enduser-preview.test.ts +0 -301
@@ -0,0 +1,156 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ var __importDefault = (this && this.__importDefault) || function (mod) {
39
+ return (mod && mod.__esModule) ? mod : { "default": mod };
40
+ };
41
+ Object.defineProperty(exports, "__esModule", { value: true });
42
+ exports.webhook_timeout_tests = void 0;
43
+ require('source-map-support').install();
44
+ var http_1 = __importDefault(require("http"));
45
+ var sdk_1 = require("../../../sdk");
46
+ var testing_1 = require("@tellescope/testing");
47
+ var setup_1 = require("../../setup");
48
+ var host = process.env.API_URL || 'http://localhost:8080';
49
+ // The server-side axios timeout is 15s (the fix under test). We bound our own wait above that.
50
+ var CLIENT_WAIT_MS = 20000;
51
+ /**
52
+ * Regression test: outbound webhook delivery must time out rather than hang.
53
+ *
54
+ * Outbound webhook delivery used axios.post(url, ...) with no `timeout` (axios default = infinite).
55
+ * A tenant-controlled receiver that accepts the connection and never responds hangs the awaited
56
+ * request indefinitely (slow-loris → worker exhaustion). Fix: timeout: 15_000 on the axios calls.
57
+ *
58
+ * Repro: stand up a local HTTP server that accepts the connection but NEVER responds, point
59
+ * send_automation_webhook (which awaits the axios call) at it, and race the call against a 20s
60
+ * client timer.
61
+ * - green (fixed): server times out at ~15s → handler returns 400 → SDK call rejects < 20s
62
+ * - red (unfixed): the call is still pending at 20s → client timer wins
63
+ */
64
+ var webhook_timeout_tests = function (_a) {
65
+ var sdk = _a.sdk;
66
+ return __awaiter(void 0, void 0, void 0, function () {
67
+ var enduserId, slowServer, port, blackholeUrl_1, enduser_1, _b;
68
+ return __generator(this, function (_c) {
69
+ switch (_c.label) {
70
+ case 0:
71
+ (0, testing_1.log_header)("outbound webhook timeout");
72
+ slowServer = http_1.default.createServer(function () { });
73
+ _c.label = 1;
74
+ case 1:
75
+ _c.trys.push([1, , 5, 10]);
76
+ return [4 /*yield*/, new Promise(function (resolve) { return slowServer.listen(0, '127.0.0.1', function () { return resolve(); }); })];
77
+ case 2:
78
+ _c.sent();
79
+ port = slowServer.address().port;
80
+ blackholeUrl_1 = "http://127.0.0.1:".concat(port, "/hook");
81
+ return [4 /*yield*/, sdk.api.endusers.createOne({ email: "f0155-".concat(Date.now(), "@example.com"), fname: 'F0155', lname: 'Webhook' })];
82
+ case 3:
83
+ enduser_1 = _c.sent();
84
+ enduserId = enduser_1.id;
85
+ return [4 /*yield*/, (0, testing_1.async_test)('outbound webhook to a non-responding receiver times out server-side (does not hang)', function () { return __awaiter(void 0, void 0, void 0, function () {
86
+ var start, outcome;
87
+ return __generator(this, function (_a) {
88
+ switch (_a.label) {
89
+ case 0:
90
+ start = Date.now();
91
+ return [4 /*yield*/, Promise.race([
92
+ sdk.api.webhooks.send_automation_webhook({
93
+ enduserId: enduser_1.id,
94
+ action: { info: { url: blackholeUrl_1 } },
95
+ }).then(function () { return 'completed'; }).catch(function () { return 'errored'; }),
96
+ new Promise(function (r) { return setTimeout(function () { return r('client-timeout'); }, CLIENT_WAIT_MS); }),
97
+ ])];
98
+ case 1:
99
+ outcome = _a.sent();
100
+ return [2 /*return*/, { outcome: outcome, elapsed: Date.now() - start }];
101
+ }
102
+ });
103
+ }); },
104
+ // green: the server-side axios timeout fired (call settled) before our 20s client wait
105
+ { onResult: function (r) { return r.outcome !== 'client-timeout' && r.elapsed < CLIENT_WAIT_MS; } })];
106
+ case 4:
107
+ _c.sent();
108
+ return [3 /*break*/, 10];
109
+ case 5:
110
+ slowServer.close();
111
+ if (!enduserId) return [3 /*break*/, 9];
112
+ _c.label = 6;
113
+ case 6:
114
+ _c.trys.push([6, 8, , 9]);
115
+ return [4 /*yield*/, sdk.api.endusers.deleteOne(enduserId)];
116
+ case 7:
117
+ _c.sent();
118
+ return [3 /*break*/, 9];
119
+ case 8:
120
+ _b = _c.sent();
121
+ return [3 /*break*/, 9];
122
+ case 9: return [7 /*endfinally*/];
123
+ case 10: return [2 /*return*/];
124
+ }
125
+ });
126
+ });
127
+ };
128
+ exports.webhook_timeout_tests = webhook_timeout_tests;
129
+ if (require.main === module) {
130
+ console.log("\uD83C\uDF10 Using API URL: ".concat(host));
131
+ var sdk_2 = new sdk_1.Session({ host: host });
132
+ var sdkNonAdmin_1 = new sdk_1.Session({ host: host });
133
+ var runTests = function () { return __awaiter(void 0, void 0, void 0, function () {
134
+ return __generator(this, function (_a) {
135
+ switch (_a.label) {
136
+ case 0: return [4 /*yield*/, (0, setup_1.setup_tests)(sdk_2, sdkNonAdmin_1)];
137
+ case 1:
138
+ _a.sent();
139
+ return [4 /*yield*/, (0, exports.webhook_timeout_tests)({ sdk: sdk_2, sdkNonAdmin: sdkNonAdmin_1 })];
140
+ case 2:
141
+ _a.sent();
142
+ return [2 /*return*/];
143
+ }
144
+ });
145
+ }); };
146
+ runTests()
147
+ .then(function () {
148
+ console.log("✅ webhook timeout test suite completed successfully");
149
+ process.exit(0);
150
+ })
151
+ .catch(function (error) {
152
+ console.error("❌ webhook timeout test suite failed:", error);
153
+ process.exit(1);
154
+ });
155
+ }
156
+ //# sourceMappingURL=webhook-timeout.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"webhook-timeout.test.js","sourceRoot":"","sources":["../../../../../src/tests/api_tests/security/webhook-timeout.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { Check } from "../setup_isolated";
2
+ export declare const tickets_bulk_assign_from_queue_checks: () => Promise<Check[]>;
3
+ /** Asserting wrapper, for standalone runs and for sequential use in the suite. */
4
+ export declare const tickets_bulk_assign_from_queue_tests: () => Promise<void>;
5
+ //# sourceMappingURL=tickets_bulk_assign_from_queue.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tickets_bulk_assign_from_queue.test.d.ts","sourceRoot":"","sources":["../../../../src/tests/api_tests/tickets_bulk_assign_from_queue.test.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,KAAK,EAEN,MAAM,mBAAmB,CAAA;AAmD1B,eAAO,MAAM,qCAAqC,QAAa,QAAQ,KAAK,EAAE,CAyM7E,CAAA;AAED,kFAAkF;AAClF,eAAO,MAAM,oCAAoC,qBAEhD,CAAA"}
@@ -0,0 +1,329 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.tickets_bulk_assign_from_queue_tests = exports.tickets_bulk_assign_from_queue_checks = void 0;
40
+ require('source-map-support').install();
41
+ var sdk_1 = require("../../sdk");
42
+ var setup_isolated_1 = require("../setup_isolated");
43
+ var host = process.env.API_URL || 'http://localhost:8080';
44
+ var RAND = function () { return Math.random().toString(36).slice(2, 10); };
45
+ /**
46
+ * Coverage for `tickets.bulk_assign` when a `queueId` is supplied — the bulk equivalent of
47
+ * `tickets.assign_from_queue`, added so a Ticket Queue's tickets can be checkbox-selected and handed
48
+ * to one user in a single call instead of one `assign_from_queue` round trip per ticket.
49
+ *
50
+ * Without `queueId` the endpoint only does `$set: { owner }`. That is insufficient for a QUEUED
51
+ * ticket: it would stay in the queue (still pullable by someone else), carry no dequeue provenance,
52
+ * and leave `ticket_queues.count` drifting upward forever. The queue branch therefore also unsets
53
+ * `queueId`, sets `dequeuedAt`/`dequeuedFrom`, and decrements the queue's count — the same
54
+ * bookkeeping `assign_from_queue` does for a single ticket. A/B/C below pin each of those.
55
+ *
56
+ * D is the check that actually justifies the handler's shape. The tickets model declares
57
+ * `constraints.access: [{ type: 'filter', field: 'owner' }]`, which the DB layer turns into
58
+ * `owner === self OR creator === self` for any non-`All` access. A queued ticket has no owner, and
59
+ * was typically created by someone else, so a non-admin queue manager's `DB.tickets.updateMany`
60
+ * matches NOTHING — the call would return 200 having assigned zero tickets, silently. The handler
61
+ * uses `buildOrganizationWideQueries` to get past that, exactly as `assign_from_queue` does, and
62
+ * re-adds the queue-membership check that those queries bypass. D1 proves the escape hatch works for
63
+ * a legitimate queue member; D2 proves it is still gated, and is the check that fails if someone
64
+ * later drops the membership check while keeping the organization-wide queries.
65
+ *
66
+ * A provisioned non-admin gets `tickets: ASSIGNED_AND_DEFAULT_ACCESS` (read/update = 'Assigned'),
67
+ * which is what makes D meaningful. The D tickets deliberately have NO enduserId, so the 'Assigned'
68
+ * role filter's other branch (enduserId in assignedEnduserIds) cannot match either — the ONLY way
69
+ * they can be assigned is through the organization-wide path.
70
+ *
71
+ * E is the regression guard on the pre-existing no-`queueId` behavior, which must be unchanged.
72
+ *
73
+ * Cross-tenant (F) is covered because `buildOrganizationWideQueries` is bound to the caller's
74
+ * businessId: another tenant's queue is invisible even to an admin, who skips the membership check.
75
+ *
76
+ * `ticket_queues.count` is maintained by asynchronous side effects (increment on ticket create) and
77
+ * the decrement here is deliberately fire-and-forget, so every count read polls.
78
+ */
79
+ // count is maintained by async side effects; give it a moment to settle before reading
80
+ var poll_for = function (get, done, attempts) {
81
+ if (attempts === void 0) { attempts = 20; }
82
+ return __awaiter(void 0, void 0, void 0, function () {
83
+ var value, i;
84
+ return __generator(this, function (_a) {
85
+ switch (_a.label) {
86
+ case 0: return [4 /*yield*/, get()];
87
+ case 1:
88
+ value = _a.sent();
89
+ i = 0;
90
+ _a.label = 2;
91
+ case 2:
92
+ if (!(i < attempts && !done(value))) return [3 /*break*/, 6];
93
+ return [4 /*yield*/, new Promise(function (resolve) { return setTimeout(resolve, 250); })];
94
+ case 3:
95
+ _a.sent();
96
+ return [4 /*yield*/, get()];
97
+ case 4:
98
+ value = _a.sent();
99
+ _a.label = 5;
100
+ case 5:
101
+ i++;
102
+ return [3 /*break*/, 2];
103
+ case 6: return [2 /*return*/, value];
104
+ }
105
+ });
106
+ });
107
+ };
108
+ var tickets_bulk_assign_from_queue_checks = function () { return __awaiter(void 0, void 0, void 0, function () {
109
+ var checks, record, tenant, otherTenant, sdk_2, sdkNonAdmin, queueMember, outsider, sdkOutsider, owner, queue_1, enduser, queued1, queued2, countBefore, assignResult, after1, countAfter, _a, _b, replayResult, countAfterReplay, otherQueue, inOtherQueue, wrongQueueResult, stillInOther, forMember1, forMember2, memberResult, memberAfter, forOutsider, outsiderResult, outsiderAfter, stayQueued, legacyResult, stayedAfter, repeatResult, foreignResult, foreignAfter, _i, _c, t, e_1;
110
+ var _d;
111
+ var _e, _f;
112
+ return __generator(this, function (_g) {
113
+ switch (_g.label) {
114
+ case 0:
115
+ checks = [];
116
+ record = function (label, pass, detail) { return checks.push({ label: label, pass: pass, detail: detail }); };
117
+ _g.label = 1;
118
+ case 1:
119
+ _g.trys.push([1, , 33, 40]);
120
+ /* ================= fixtures ================= */
121
+ // users[1] joins the queue, users[2] deliberately does not (D2)
122
+ ;
123
+ return [4 /*yield*/, Promise.all([
124
+ (0, setup_isolated_1.setup_isolated_tenant)({
125
+ name: "BulkAssignQueue ".concat(RAND()),
126
+ users: [{ isAdmin: true }, { roles: ['Non-Admin'] }, { roles: ['Non-Admin'] }],
127
+ apiKeys: 0,
128
+ }),
129
+ (0, setup_isolated_1.setup_isolated_tenant)({
130
+ name: "BulkAssignQueue other ".concat(RAND()),
131
+ users: [{ isAdmin: true }],
132
+ apiKeys: 0,
133
+ }),
134
+ ])];
135
+ case 2:
136
+ _d = _g.sent(), tenant = _d[0], otherTenant = _d[1];
137
+ sdk_2 = tenant.sdk, sdkNonAdmin = tenant.sdkNonAdmin;
138
+ queueMember = tenant.users[1];
139
+ outsider = tenant.users[2];
140
+ sdkOutsider = new sdk_1.Session({ host: host, authToken: outsider.authToken });
141
+ return [4 /*yield*/, sdkOutsider.refresh_session()];
142
+ case 3:
143
+ _g.sent();
144
+ return [4 /*yield*/, sdk_2.api.users.createOne({
145
+ email: "dontsend-bulk-assign-queue-".concat(RAND(), "@tellescope.com"),
146
+ fname: 'BulkAssign', lname: 'QueueOwner',
147
+ verifiedEmail: true,
148
+ })];
149
+ case 4:
150
+ owner = _g.sent();
151
+ return [4 /*yield*/, sdk_2.api.ticket_queues.createOne({
152
+ title: "Bulk Assign Queue ".concat(RAND()),
153
+ userIds: [owner.id, queueMember.id], // outsider is NOT a member
154
+ })];
155
+ case 5:
156
+ queue_1 = _g.sent();
157
+ return [4 /*yield*/, sdk_2.api.endusers.createOne({ fname: 'BulkAssign', lname: 'QueuePatient' })
158
+ // A/B/C fixtures — one carries an enduser so care team behavior is exercised alongside dequeue
159
+ ];
160
+ case 6:
161
+ enduser = _g.sent();
162
+ return [4 /*yield*/, sdk_2.api.tickets.createOne({ title: 'BAQ 1', enduserId: enduser.id, queueId: queue_1.id })];
163
+ case 7:
164
+ queued1 = _g.sent();
165
+ return [4 /*yield*/, sdk_2.api.tickets.createOne({ title: 'BAQ 2', queueId: queue_1.id })];
166
+ case 8:
167
+ queued2 = _g.sent();
168
+ return [4 /*yield*/, poll_for(function () { return sdk_2.api.ticket_queues.getOne(queue_1.id).then(function (q) { var _a; return (_a = q.count) !== null && _a !== void 0 ? _a : 0; }); }, function (c) { return c === 2; })];
169
+ case 9:
170
+ countBefore = _g.sent();
171
+ record('setup: queue count reflects both queued tickets', countBefore === 2, "count=".concat(countBefore, " (want 2); queue=").concat(queue_1.id));
172
+ return [4 /*yield*/, sdk_2.api.tickets.bulk_assign({
173
+ ids: [queued1.id, queued2.id], userId: owner.id, queueId: queue_1.id, addToCareTeam: true,
174
+ })];
175
+ case 10:
176
+ assignResult = _g.sent();
177
+ record('A1: reports both tickets assigned and none skipped', assignResult.assigned === 2 && assignResult.skipped === 0, "assigned=".concat(assignResult.assigned, " skipped=").concat(assignResult.skipped, " (want 2 / 0)"));
178
+ return [4 /*yield*/, sdk_2.api.tickets.getOne(queued1.id)];
179
+ case 11:
180
+ after1 = _g.sent();
181
+ record('A2: ticket left the queue with owner and dequeue provenance set', !after1.queueId && after1.owner === owner.id && !!after1.dequeuedAt && after1.dequeuedFrom === queue_1.id, "queueId=".concat(JSON.stringify(after1.queueId), " owner=").concat(after1.owner, " dequeuedAt=").concat(JSON.stringify(after1.dequeuedAt), " dequeuedFrom=").concat(after1.dequeuedFrom));
182
+ return [4 /*yield*/, poll_for(function () { return sdk_2.api.ticket_queues.getOne(queue_1.id).then(function (q) { var _a; return (_a = q.count) !== null && _a !== void 0 ? _a : 0; }); }, function (c) { return c === 0; })];
183
+ case 12:
184
+ countAfter = _g.sent();
185
+ record('A3: queue count decremented by the number assigned', countAfter === 0, "count=".concat(countAfter, " (want 0, was ").concat(countBefore, ")"));
186
+ _a = record;
187
+ _b = ['A4: addToCareTeam adds the new owner to the ticket enduser\'s care team'];
188
+ return [4 /*yield*/, sdk_2.api.endusers.getOne(enduser.id)];
189
+ case 13:
190
+ _a.apply(void 0, _b.concat([!!((_e = (_g.sent()).assignedTo) === null || _e === void 0 ? void 0 : _e.includes(owner.id)), "assignedTo must contain ".concat(owner.id)]));
191
+ return [4 /*yield*/, sdk_2.api.tickets.bulk_assign({
192
+ ids: [queued1.id, queued2.id], userId: owner.id, queueId: queue_1.id,
193
+ })];
194
+ case 14:
195
+ replayResult = _g.sent();
196
+ record('B1: already-dequeued ids are reported as skipped', replayResult.assigned === 0 && replayResult.skipped === 2, "assigned=".concat(replayResult.assigned, " skipped=").concat(replayResult.skipped, " (want 0 / 2)"));
197
+ return [4 /*yield*/, sdk_2.api.ticket_queues.getOne(queue_1.id).then(function (q) { var _a; return (_a = q.count) !== null && _a !== void 0 ? _a : 0; })];
198
+ case 15:
199
+ countAfterReplay = _g.sent();
200
+ record('B2: queue count is not decremented again when nothing was assigned', countAfterReplay === 0, "count=".concat(countAfterReplay, " (want 0 \u2014 a decrement here would drive it negative)"));
201
+ return [4 /*yield*/, sdk_2.api.ticket_queues.createOne({
202
+ title: "Bulk Assign Other Queue ".concat(RAND()),
203
+ userIds: [owner.id],
204
+ })];
205
+ case 16:
206
+ otherQueue = _g.sent();
207
+ return [4 /*yield*/, sdk_2.api.tickets.createOne({ title: 'BAQ other queue', queueId: otherQueue.id })];
208
+ case 17:
209
+ inOtherQueue = _g.sent();
210
+ return [4 /*yield*/, sdk_2.api.tickets.bulk_assign({
211
+ ids: [inOtherQueue.id], userId: owner.id, queueId: queue_1.id,
212
+ })];
213
+ case 18:
214
+ wrongQueueResult = _g.sent();
215
+ return [4 /*yield*/, sdk_2.api.tickets.getOne(inOtherQueue.id)];
216
+ case 19:
217
+ stillInOther = _g.sent();
218
+ record('C1: a ticket in a different queue is not assigned when the wrong queueId is passed', wrongQueueResult.assigned === 0 && stillInOther.queueId === otherQueue.id && !stillInOther.owner, "assigned=".concat(wrongQueueResult.assigned, " (want 0); ticket queueId=").concat(stillInOther.queueId, " owner=").concat(JSON.stringify(stillInOther.owner)));
219
+ return [4 /*yield*/, sdk_2.api.tickets.createOne({ title: 'BAQ member 1', queueId: queue_1.id })];
220
+ case 20:
221
+ forMember1 = _g.sent();
222
+ return [4 /*yield*/, sdk_2.api.tickets.createOne({ title: 'BAQ member 2', queueId: queue_1.id })];
223
+ case 21:
224
+ forMember2 = _g.sent();
225
+ return [4 /*yield*/, sdkNonAdmin.api.tickets.bulk_assign({
226
+ ids: [forMember1.id, forMember2.id], userId: owner.id, queueId: queue_1.id,
227
+ }).then(function (r) { return r; }).catch(function (e) { return ({ error: (e === null || e === void 0 ? void 0 : e.message) || String(e) }); })];
228
+ case 22:
229
+ memberResult = _g.sent();
230
+ return [4 /*yield*/, sdk_2.api.tickets.getOne(forMember1.id)];
231
+ case 23:
232
+ memberAfter = _g.sent();
233
+ record('D1: a non-admin queue member can bulk assign queued tickets they do not own', (memberResult === null || memberResult === void 0 ? void 0 : memberResult.assigned) === 2 && !memberAfter.queueId && memberAfter.owner === owner.id, "result=".concat(JSON.stringify(memberResult), "; ticket queueId=").concat(JSON.stringify(memberAfter.queueId), " owner=").concat(memberAfter.owner)
234
+ + " \u2014 0 assigned here means the handler fell back to the owner-filtered DB");
235
+ return [4 /*yield*/, sdk_2.api.tickets.createOne({ title: 'BAQ outsider', queueId: queue_1.id })];
236
+ case 24:
237
+ forOutsider = _g.sent();
238
+ return [4 /*yield*/, sdkOutsider.api.tickets.bulk_assign({
239
+ ids: [forOutsider.id], userId: outsider.id, queueId: queue_1.id,
240
+ }).then(function (r) { return ({ resolved: r }); }).catch(function (e) { return ({ rejected: (e === null || e === void 0 ? void 0 : e.message) || String(e) }); })];
241
+ case 25:
242
+ outsiderResult = _g.sent();
243
+ return [4 /*yield*/, sdk_2.api.tickets.getOne(forOutsider.id)];
244
+ case 26:
245
+ outsiderAfter = _g.sent();
246
+ record('D2: a non-admin who is not a member of the queue is rejected', !!outsiderResult.rejected && outsiderAfter.queueId === queue_1.id && !outsiderAfter.owner, "result=".concat(JSON.stringify(outsiderResult), "; ticket queueId=").concat(outsiderAfter.queueId, " owner=").concat(JSON.stringify(outsiderAfter.owner)));
247
+ return [4 /*yield*/, sdk_2.api.tickets.createOne({ title: 'BAQ not dequeued', queueId: queue_1.id })];
248
+ case 27:
249
+ stayQueued = _g.sent();
250
+ return [4 /*yield*/, sdk_2.api.tickets.bulk_assign({ ids: [stayQueued.id], userId: owner.id })];
251
+ case 28:
252
+ legacyResult = _g.sent();
253
+ return [4 /*yield*/, sdk_2.api.tickets.getOne(stayQueued.id)];
254
+ case 29:
255
+ stayedAfter = _g.sent();
256
+ record('E1: without queueId the ticket is assigned but NOT dequeued', legacyResult.assigned === 1 && stayedAfter.owner === owner.id
257
+ && stayedAfter.queueId === queue_1.id && !stayedAfter.dequeuedAt, "assigned=".concat(legacyResult.assigned, "; owner=").concat(stayedAfter.owner, " queueId=").concat(stayedAfter.queueId, " dequeuedAt=").concat(JSON.stringify(stayedAfter.dequeuedAt)));
258
+ return [4 /*yield*/, sdk_2.api.tickets.bulk_assign({ ids: [stayQueued.id], userId: owner.id })];
259
+ case 30:
260
+ repeatResult = _g.sent();
261
+ record('E2: re-assigning to the same owner is not reported as skipped', repeatResult.assigned === 1 && repeatResult.skipped === 0, "assigned=".concat(repeatResult.assigned, " skipped=").concat(repeatResult.skipped, " (want 1 / 0 \u2014 matchedCount, not modifiedCount)"));
262
+ return [4 /*yield*/, otherTenant.sdk.api.tickets.bulk_assign({
263
+ ids: [forOutsider.id], userId: otherTenant.users[0].id, queueId: queue_1.id,
264
+ }).then(function (r) { return ({ resolved: r }); }).catch(function (e) { return ({ rejected: (e === null || e === void 0 ? void 0 : e.message) || String(e) }); })];
265
+ case 31:
266
+ foreignResult = _g.sent();
267
+ return [4 /*yield*/, sdk_2.api.tickets.getOne(forOutsider.id)];
268
+ case 32:
269
+ foreignAfter = _g.sent();
270
+ record('F1: another tenant cannot assign tickets out of this tenant\'s queue', (foreignAfter.queueId === queue_1.id && !foreignAfter.owner)
271
+ && (foreignResult.rejected || ((_f = foreignResult.resolved) === null || _f === void 0 ? void 0 : _f.assigned) === 0), "result=".concat(JSON.stringify(foreignResult), "; ticket queueId=").concat(foreignAfter.queueId, " owner=").concat(JSON.stringify(foreignAfter.owner)));
272
+ return [3 /*break*/, 40];
273
+ case 33:
274
+ _i = 0, _c = [tenant, otherTenant];
275
+ _g.label = 34;
276
+ case 34:
277
+ if (!(_i < _c.length)) return [3 /*break*/, 39];
278
+ t = _c[_i];
279
+ if (!t) return [3 /*break*/, 38];
280
+ _g.label = 35;
281
+ case 35:
282
+ _g.trys.push([35, 37, , 38]);
283
+ return [4 /*yield*/, t.teardown()];
284
+ case 36:
285
+ _g.sent();
286
+ return [3 /*break*/, 38];
287
+ case 37:
288
+ e_1 = _g.sent();
289
+ console.error('teardown failed', e_1);
290
+ return [3 /*break*/, 38];
291
+ case 38:
292
+ _i++;
293
+ return [3 /*break*/, 34];
294
+ case 39: return [7 /*endfinally*/];
295
+ case 40: return [2 /*return*/, checks];
296
+ }
297
+ });
298
+ }); };
299
+ exports.tickets_bulk_assign_from_queue_checks = tickets_bulk_assign_from_queue_checks;
300
+ /** Asserting wrapper, for standalone runs and for sequential use in the suite. */
301
+ var tickets_bulk_assign_from_queue_tests = function () { return __awaiter(void 0, void 0, void 0, function () {
302
+ var _a, _b;
303
+ return __generator(this, function (_c) {
304
+ switch (_c.label) {
305
+ case 0:
306
+ _a = setup_isolated_1.assert_checks;
307
+ _b = ['Tickets bulk assign from queue'];
308
+ return [4 /*yield*/, (0, exports.tickets_bulk_assign_from_queue_checks)()];
309
+ case 1:
310
+ _a.apply(void 0, _b.concat([_c.sent()]));
311
+ return [2 /*return*/];
312
+ }
313
+ });
314
+ }); };
315
+ exports.tickets_bulk_assign_from_queue_tests = tickets_bulk_assign_from_queue_tests;
316
+ // Allow running this test file independently
317
+ if (require.main === module) {
318
+ console.log("\uD83C\uDF10 Using API URL: ".concat(host));
319
+ (0, exports.tickets_bulk_assign_from_queue_tests)()
320
+ .then(function () {
321
+ console.log("✅ Tickets bulk assign from queue test suite completed successfully");
322
+ process.exit(0);
323
+ })
324
+ .catch(function (error) {
325
+ console.error("❌ Tickets bulk assign from queue test suite failed:", error);
326
+ process.exit(1);
327
+ });
328
+ }
329
+ //# sourceMappingURL=tickets_bulk_assign_from_queue.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tickets_bulk_assign_from_queue.test.js","sourceRoot":"","sources":["../../../../src/tests/api_tests/tickets_bulk_assign_from_queue.test.ts"],"names":[],"mappings":"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"}
@@ -221,13 +221,13 @@ var webhook_error_handling_tests = function (_a) {
221
221
  'deliveryFailureCount incremented after HTTP 500']);
222
222
  // Scenario 3 (timeout): skipped — WEBHOOK_TIMEOUT_MS is a constant (15s), not env-overridable,
223
223
  // and a 15s+ non-responding receiver would make this suite unacceptably slow.
224
- // Covered by security/F-0155-webhook-timeout.test.ts via send_automation_webhook.
224
+ // Covered by security/webhook-timeout.test.ts via send_automation_webhook.
225
225
  // Scenario 4: success path unchanged — 200 logged, counter untouched
226
226
  return [4 /*yield*/, sdk.api.webhooks.update({ url: "".concat(receiverBase, "/success") })];
227
227
  case 17:
228
228
  // Scenario 3 (timeout): skipped — WEBHOOK_TIMEOUT_MS is a constant (15s), not env-overridable,
229
229
  // and a 15s+ non-responding receiver would make this suite unacceptably slow.
230
- // Covered by security/F-0155-webhook-timeout.test.ts via send_automation_webhook.
230
+ // Covered by security/webhook-timeout.test.ts via send_automation_webhook.
231
231
  // Scenario 4: success path unchanged — 200 logged, counter untouched
232
232
  _j.sent();
233
233
  return [4 /*yield*/, trigger_delivery('success')];
@@ -1 +1 @@
1
- {"version":3,"file":"webhook_error_handling.test.js","sourceRoot":"","sources":["../../../../src/tests/api_tests/webhook_error_handling.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"webhook_error_handling.test.js","sourceRoot":"","sources":["../../../../src/tests/api_tests/webhook_error_handling.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,CAAC,oBAAoB,CAAC,CAAC,OAAO,EAAE,CAAC;AAExC,oDAA6B;AAC7B,4DAAoC;AACpC,kDAA2B;AAG3B,iCAAmC;AACnC,+CAK4B;AAC5B,kCAAsC;AAEtC,IAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,uBAAgC,CAAA;AAEpE,IAAM,WAAW,GAAG,4DAA4D,CAAA;AAChF,IAAM,MAAM,GAAG,UAAC,CAAS,IAAK,OAAA,gBAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAnD,CAAmD,CAAA;AAEjF,iGAAiG;AACjG,IAAM,aAAa,GAAG,iDAAiD,CAAA;AAEvE,IAAM,eAAe,GAAG,KAAM,CAAA;AAC9B,IAAM,gBAAgB,GAAG,GAAG,CAAA;AAE5B,IAAM,gBAAgB,GAAG,UAAO,GAAY,EAAE,GAAW;;;;;gBACjD,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;;;qBACjB,CAAA,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,GAAG,eAAe,CAAA;gBAC5B,qBAAM,GAAG,CAAC,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,UAAiB,EAAE,CAAC,EAAA;;gBAAjF,IAAI,GAAG,SAAwF;gBAC/F,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,GAAG,KAAK,GAAG,EAAb,CAAa,CAAC,CAAA;gBAC3C,IAAI,KAAK;oBAAE,sBAAO,KAAK,EAAA;gBACvB,qBAAM,IAAA,cAAI,EAAC,SAAS,EAAE,gBAAgB,CAAC,EAAA;;gBAAvC,SAAuC,CAAA;;oBAEzC,sBAAO,IAAI,EAAA;;;KACZ,CAAA;AAED,IAAM,iBAAiB,GAAG,UAAO,GAAY;;;;;oBAC3B,qBAAM,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAA;;gBAA1C,OAAO,GAAG,SAA8C;gBAC9D,sBAAO,CAAC,MAAA,MAAA,OAAO,CAAC,CAAC,CAAC,0CAAE,oBAAoB,mCAAI,CAAC,CAAW,EAAA;;;KACzD,CAAA;AAED,0EAA0E;AAC1E,IAAM,sBAAsB,GAAG,UAAO,GAAY,EAAE,QAAgB;;;;;gBAC5D,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;gBACpB,KAAK,GAAG,CAAC,CAAC,CAAA;;;qBACP,CAAA,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,GAAG,eAAe,CAAA;gBACjC,qBAAM,iBAAiB,CAAC,GAAG,CAAC,EAAA;;gBAApC,KAAK,GAAG,SAA4B,CAAA;gBACpC,IAAI,KAAK,KAAK,QAAQ;oBAAE,sBAAO,KAAK,EAAA;gBACpC,qBAAM,IAAA,cAAI,EAAC,SAAS,EAAE,gBAAgB,CAAC,EAAA;;gBAAvC,SAAuC,CAAA;;oBAEzC,sBAAO,KAAK,EAAA;;;KACb,CAAA;AAED,sDAAsD;AAC/C,IAAM,4BAA4B,GAAG,UAAO,EAA6D;QAA3D,GAAG,SAAA,EAAE,WAAW,iBAAA;;;;;;;oBACnE,IAAA,oBAAU,EAAC,8BAA8B,CAAC,CAAA;oBAGpC,GAAG,GAAG,IAAA,iBAAO,GAAE,CAAA;oBACrB,GAAG,CAAC,GAAG,CAAC,qBAAU,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,CAAA;oBAEvC,wBAAwB,GAAG,KAAK,CAAA;oBACpC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,UAAC,CAAC,EAAE,GAAG,IAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAA,CAAC,CAAC,CAAC,CAAA;oBACrF,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,UAAC,CAAC,EAAE,GAAG,IAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,CAAA,CAAC,CAAC,CAAC,CAAA;oBACtF,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,UAAC,GAAG,EAAE,GAAG;wBACtB,IAAA,KAAoC,GAAG,CAAC,IAAI,EAA1C,OAAO,aAAA,EAAE,SAAS,eAAA,EAAE,SAAS,eAAa,CAAA;wBAClD,wBAAwB,GAAG,CACzB,MAAM,CAAC,CAAC,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,EAAE,CAAC,CAAC,GAAG,CAAC,UAAC,CAAiB,IAAK,OAAA,CAAC,CAAC,EAAE,EAAJ,CAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,SAAS,GAAG,WAAW,CAAC,KAAK,SAAS,CAC1G,CAAA;wBACD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;oBAC1B,CAAC,CAAC,CAAA;oBAE0B,qBAAM,IAAI,OAAO,CAAC,UAAA,OAAO;4BACnD,IAAM,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,WAAW,EAAE,cAAM,OAAA,OAAO,CAAC,CAAC,CAAC,EAAV,CAAU,CAAC,CAAA;wBACxD,CAAC,CAAC,EAAA;;oBAFI,MAAM,GAAgB,SAE1B;oBACI,YAAY,GAAG,2BAAqB,MAAM,CAAC,OAAO,EAAU,CAAC,IAAI,CAAE,CAAA;oBAEnE,UAAU,GAAa,EAAE,CAAA;oBACzB,gBAAgB,GAAG,UAAO,KAAa;;;;wCAC3B,qBAAM,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,wBAAiB,KAAK,cAAI,IAAI,CAAC,GAAG,EAAE,oBAAiB,EAAE,CAAC,EAAA;;oCAA5G,OAAO,GAAG,SAAkG;oCAClH,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;;;;yBAC5B,CAAA;;;;oBAGC,qBAAM,IAAA,oBAAU,EACd,mBAAmB,EACnB,cAAM,OAAA,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,aAAa,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,EAAvE,CAAuE,EAC7E,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,cAAM,OAAA,IAAI,EAAJ,CAAI,EAAE,CAC7C,EAAA;;oBAJD,SAIC,CAAA;oBACD,qBAAM,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,mBAAmB,EAAE,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,EAAA;;oBAApH,SAAoH,CAAA;oBAE/F,qBAAM,iBAAiB,CAAC,GAAG,CAAC;wBAEjD,kDAAkD;sBAFD;;oBAA3C,YAAY,GAAG,SAA4B;oBAEjD,kDAAkD;oBAClD,qBAAM,gBAAgB,CAAC,WAAW,CAAC,EAAA;;oBADnC,kDAAkD;oBAClD,SAAmC,CAAA;oBACd,qBAAM,gBAAgB,CAAC,GAAG,EAAE,aAAa,CAAC,EAAA;;oBAAzD,YAAY,GAAG,SAA0C;oBAC/D,IAAA,gBAAM,EAAC,CAAC,CAAC,YAAY,EAAE,8CAA8C,EAAE,0CAA0C,CAAC,CAAA;oBAClH,IAAA,gBAAM,EACJ,OAAO,CAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,QAAQ,CAAA,KAAK,QAAQ,IAAI,YAAY,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAC9E,uDAAgD,IAAI,CAAC,SAAS,CAAC,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,QAAQ,CAAC,CAAE,EACxF,6CAA6C,CAC9C,CAAA;oBACD,IAAA,gBAAM,EAAC,CAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,YAAY,MAAK,SAAS,EAAE,uCAAuC,EAAE,mCAAmC,CAAC,CAAA;oBAC9H,KAAA,gBAAM,CAAA;oBACJ,qBAAM,sBAAsB,CAAC,GAAG,EAAE,YAAY,GAAG,CAAC,CAAC,EAAA;;oBADrD,kBACE,CAAA,SAAmD,MAAK,YAAY,GAAG,CAAC;wBACxE,sDAAsD;wBACtD,kDAAkD,EACnD,CAAA;oBAED,0CAA0C;oBAC1C,qBAAM,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,UAAG,YAAY,cAAW,EAAE,CAAC,EAAA;;oBADlE,0CAA0C;oBAC1C,SAAkE,CAAA;oBAClE,qBAAM,gBAAgB,CAAC,SAAS,CAAC,EAAA;;oBAAjC,SAAiC,CAAA;oBAClB,qBAAM,gBAAgB,CAAC,GAAG,EAAE,UAAG,YAAY,cAAW,CAAC,EAAA;;oBAAhE,MAAM,GAAG,SAAuD;oBACtE,IAAA,gBAAM,EAAC,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,YAAY,MAAK,GAAG,EAAE,yCAAkC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,YAAY,CAAE,EAAE,gCAAgC,CAAC,CAAA;oBAChI,KAAA,gBAAM,CAAA;oBACJ,qBAAM,sBAAsB,CAAC,GAAG,EAAE,YAAY,GAAG,CAAC,CAAC,EAAA;;oBADrD,kBACE,CAAA,SAAmD,MAAK,YAAY,GAAG,CAAC;wBACxE,qDAAqD;wBACrD,iDAAiD,EAClD,CAAA;oBAED,0CAA0C;oBAC1C,qBAAM,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,UAAG,YAAY,cAAW,EAAE,CAAC,EAAA;;oBADlE,0CAA0C;oBAC1C,SAAkE,CAAA;oBAClE,qBAAM,gBAAgB,CAAC,SAAS,CAAC,EAAA;;oBAAjC,SAAiC,CAAA;oBAClB,qBAAM,gBAAgB,CAAC,GAAG,EAAE,UAAG,YAAY,cAAW,CAAC,EAAA;;oBAAhE,MAAM,GAAG,SAAuD;oBACtE,IAAA,gBAAM,EAAC,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,YAAY,MAAK,GAAG,EAAE,yCAAkC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,YAAY,CAAE,EAAE,gCAAgC,CAAC,CAAA;oBAChI,KAAA,gBAAM,CAAA;oBACJ,qBAAM,sBAAsB,CAAC,GAAG,EAAE,YAAY,GAAG,CAAC,CAAC,EAAA;;oBADrD,kBACE,CAAA,SAAmD,MAAK,YAAY,GAAG,CAAC;wBACxE,qDAAqD;wBACrD,iDAAiD,EAClD,CAAA;oBAED,+FAA+F;oBAC/F,8EAA8E;oBAC9E,2EAA2E;oBAE3E,qEAAqE;oBACrE,qBAAM,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,UAAG,YAAY,aAAU,EAAE,CAAC,EAAA;;oBALjE,+FAA+F;oBAC/F,8EAA8E;oBAC9E,2EAA2E;oBAE3E,qEAAqE;oBACrE,SAAiE,CAAA;oBACjE,qBAAM,gBAAgB,CAAC,SAAS,CAAC,EAAA;;oBAAjC,SAAiC,CAAA;oBACd,qBAAM,gBAAgB,CAAC,GAAG,EAAE,UAAG,YAAY,aAAU,CAAC,EAAA;;oBAAnE,UAAU,GAAG,SAAsD;oBACzE,IAAA,gBAAM,EAAC,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,YAAY,MAAK,GAAG,EAAE,yCAAkC,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,YAAY,CAAE,EAAE,+BAA+B,CAAC,CAAA;oBACvI,IAAA,gBAAM,EAAC,wBAAwB,EAAE,4CAA4C,EAAE,qCAAqC,CAAC,CAAA;oBACrH,qBAAM,IAAA,cAAI,EAAC,SAAS,EAAE,IAAI,CAAC,EAAA,CAAC,+DAA+D;;oBAA3F,SAA2B,CAAA,CAAC,+DAA+D;oBAC3F,KAAA,gBAAM,CAAA;oBACJ,qBAAM,iBAAiB,CAAC,GAAG,CAAC,EAAA;;oBAD9B,kBACE,CAAA,SAA4B,MAAK,YAAY,GAAG,CAAC;wBACjD,qDAAqD;wBACrD,2CAA2C,EAC5C,CAAA;oBAGe,qBAAM,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAA;;oBAA1C,OAAO,GAAG,SAA8C;oBACxD,SAAS,GAAG,MAAA,OAAO,CAAC,CAAC,CAAC,0CAAE,EAAE,CAAA;oBAChC,qBAAM,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,oBAAoB,EAAE,IAAI,EAAS,CAAC,CAAC,KAAK,CAAC,cAAO,CAAC,CAAC,EAAA,CAAC,wBAAwB;;oBAA3H,SAAkG,CAAA,CAAC,wBAAwB;oBAC3H,KAAA,gBAAM,CAAA;oBACJ,qBAAM,iBAAiB,CAAC,GAAG,CAAC,EAAA;;oBAD9B,kBACE,CAAA,SAA4B,MAAK,YAAY,GAAG,CAAC;wBACjD,qDAAqD;wBACrD,4CAA4C,EAC7C,CAAA;;;gBAED,wEAAwE;gBACxE,qBAAM,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,mBAAmB,EAAE,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,cAAO,CAAC,CAAC,EAAA;;oBADrI,wEAAwE;oBACxE,SAAqI,CAAA;oBACrI,MAAM,CAAC,KAAK,EAAE,CAAA;0BACa,EAAV,yBAAU;;;yBAAV,CAAA,wBAAU,CAAA;oBAAhB,EAAE;;;;oBACL,qBAAM,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,EAAA;;oBAApC,SAAoC,CAAA;;;;;;oBAD3B,IAAU,CAAA;;;;;;;CAI9B,CAAA;AA/GY,QAAA,4BAA4B,gCA+GxC;AAED,6CAA6C;AAC7C,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE;IAC3B,OAAO,CAAC,GAAG,CAAC,sCAAqB,IAAI,CAAE,CAAC,CAAA;IACxC,IAAM,KAAG,GAAG,IAAI,aAAO,CAAC,EAAE,IAAI,MAAA,EAAE,CAAC,CAAA;IACjC,IAAM,aAAW,GAAG,IAAI,aAAO,CAAC,EAAE,IAAI,MAAA,EAAE,CAAC,CAAA;IAEzC,IAAM,QAAQ,GAAG;;;wBACf,qBAAM,IAAA,mBAAW,EAAC,KAAG,EAAE,aAAW,CAAC,EAAA;;oBAAnC,SAAmC,CAAA;oBACnC,qBAAM,IAAA,oCAA4B,EAAC,EAAE,GAAG,OAAA,EAAE,WAAW,eAAA,EAAE,CAAC,EAAA;;oBAAxD,SAAwD,CAAA;;;;SACzD,CAAA;IAED,QAAQ,EAAE;SACP,IAAI,CAAC;QACJ,OAAO,CAAC,GAAG,CAAC,4DAA4D,CAAC,CAAA;QACzE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC,CAAC;SACD,KAAK,CAAC,UAAC,KAAK;QACX,OAAO,CAAC,KAAK,CAAC,6CAA6C,EAAE,KAAK,CAAC,CAAA;QACnE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC,CAAC,CAAA;CACL"}