@dakkitor/api-contracts 1.7.1 → 1.9.1

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 (218) hide show
  1. package/dist/abilities/abilities.contract.d.ts +1 -1
  2. package/dist/abilities/abilities.contract.d.ts.map +1 -1
  3. package/dist/abilities/abilities.contract.js +1 -0
  4. package/dist/abilities/abilities.contract.spec.js +50 -19
  5. package/dist/abilities/interconnection.abilities.json +6 -0
  6. package/dist/abilities/outreach.abilities.json +0 -7
  7. package/dist/abilities/second-agent.abilities.json +18 -91
  8. package/dist/abilities/team-leads.json +1 -0
  9. package/dist/abilities/worker-curator.abilities.json +2 -0
  10. package/dist/actives/actives.contract.d.ts +7083 -6905
  11. package/dist/actives/actives.contract.d.ts.map +1 -1
  12. package/dist/agent-client-links/agent-client-links.contract.d.ts +1645 -1543
  13. package/dist/agent-client-links/agent-client-links.contract.d.ts.map +1 -1
  14. package/dist/auth/auth.contract.d.ts +73 -67
  15. package/dist/auth/auth.contract.d.ts.map +1 -1
  16. package/dist/auth/auth.contract.js +1 -0
  17. package/dist/bookings/backdate-guard.spec.d.ts +2 -0
  18. package/dist/bookings/backdate-guard.spec.d.ts.map +1 -0
  19. package/dist/bookings/backdate-guard.spec.js +80 -0
  20. package/dist/bookings/bookings.contract.d.ts +11169 -10843
  21. package/dist/bookings/bookings.contract.d.ts.map +1 -1
  22. package/dist/bookings/bookings.contract.js +26 -2
  23. package/dist/call-history/call-history.contract.d.ts +913 -876
  24. package/dist/call-history/call-history.contract.d.ts.map +1 -1
  25. package/dist/calls-feed/calls-feed.contract.d.ts +126 -119
  26. package/dist/calls-feed/calls-feed.contract.d.ts.map +1 -1
  27. package/dist/candidate-calling/candidate-calling.contract.d.ts +13397 -0
  28. package/dist/candidate-calling/candidate-calling.contract.d.ts.map +1 -0
  29. package/dist/candidate-calling/candidate-calling.contract.js +206 -0
  30. package/dist/candidate-calling/candidate-calling.contract.spec.d.ts +2 -0
  31. package/dist/candidate-calling/candidate-calling.contract.spec.d.ts.map +1 -0
  32. package/dist/candidate-calling/candidate-calling.contract.spec.js +193 -0
  33. package/dist/client-contacts/client-contacts.contract.d.ts +290 -290
  34. package/dist/clients/clients.contract.d.ts +110 -110
  35. package/dist/collaboration-checkings/collaboration-checkings.contract.d.ts +3052 -2948
  36. package/dist/collaboration-checkings/collaboration-checkings.contract.d.ts.map +1 -1
  37. package/dist/collaborations/collaborations.contract.d.ts +2640 -2543
  38. package/dist/collaborations/collaborations.contract.d.ts.map +1 -1
  39. package/dist/common/common-schemas.d.ts +13 -13
  40. package/dist/common/common-schemas.d.ts.map +1 -1
  41. package/dist/common/common-schemas.js +1 -0
  42. package/dist/common/nino.d.ts +8 -0
  43. package/dist/common/nino.d.ts.map +1 -0
  44. package/dist/common/nino.js +26 -0
  45. package/dist/common/nino.spec.d.ts +2 -0
  46. package/dist/common/nino.spec.d.ts.map +1 -0
  47. package/dist/common/nino.spec.js +32 -0
  48. package/dist/companies/companies.contract.d.ts +30 -30
  49. package/dist/crews/crews.contract.d.ts +300 -300
  50. package/dist/cron-executions/cron-executions.contract.d.ts +26 -13
  51. package/dist/cron-executions/cron-executions.contract.d.ts.map +1 -1
  52. package/dist/cron-executions/cron-executions.contract.js +2 -0
  53. package/dist/cron-executions/cron-executions.contract.spec.d.ts +2 -0
  54. package/dist/cron-executions/cron-executions.contract.spec.d.ts.map +1 -0
  55. package/dist/cron-executions/cron-executions.contract.spec.js +27 -0
  56. package/dist/curated-worker-leads/candidate-booking-date-fields.spec.d.ts +2 -0
  57. package/dist/curated-worker-leads/candidate-booking-date-fields.spec.d.ts.map +1 -0
  58. package/dist/curated-worker-leads/candidate-booking-date-fields.spec.js +59 -0
  59. package/dist/curated-worker-leads/candidate-coordination.contract.d.ts +3483 -2798
  60. package/dist/curated-worker-leads/candidate-coordination.contract.d.ts.map +1 -1
  61. package/dist/curated-worker-leads/candidate-coordination.contract.js +59 -10
  62. package/dist/curated-worker-leads/candidate-coordination.contract.spec.js +11 -0
  63. package/dist/curated-worker-leads/candidate-edit-session.contract.d.ts +429 -386
  64. package/dist/curated-worker-leads/candidate-edit-session.contract.d.ts.map +1 -1
  65. package/dist/curated-worker-leads/contact-history.spec.js +56 -0
  66. package/dist/curated-worker-leads/curated-worker-lead-config.contract.d.ts +2 -85
  67. package/dist/curated-worker-leads/curated-worker-lead-config.contract.d.ts.map +1 -1
  68. package/dist/curated-worker-leads/curated-worker-lead-config.contract.js +17 -41
  69. package/dist/curated-worker-leads/curated-worker-lead-config.contract.spec.d.ts +2 -0
  70. package/dist/curated-worker-leads/curated-worker-lead-config.contract.spec.d.ts.map +1 -0
  71. package/dist/curated-worker-leads/curated-worker-lead-config.contract.spec.js +30 -0
  72. package/dist/curated-worker-leads/job-feed-match-counts.contract.spec.js +30 -0
  73. package/dist/curated-worker-leads/jobs-tab.contract.d.ts +5821 -5144
  74. package/dist/curated-worker-leads/jobs-tab.contract.d.ts.map +1 -1
  75. package/dist/curated-worker-leads/jobs-tab.contract.js +64 -12
  76. package/dist/curated-worker-leads/owned-jobs-tab.contract.d.ts +96 -96
  77. package/dist/curated-workers/curated-workers.contract.d.ts +1518 -1307
  78. package/dist/curated-workers/curated-workers.contract.d.ts.map +1 -1
  79. package/dist/curated-workers/curated-workers.contract.js +37 -6
  80. package/dist/dashboards/dashboard-widgets.contract.d.ts +425 -455
  81. package/dist/dashboards/dashboard-widgets.contract.d.ts.map +1 -1
  82. package/dist/dashboards/dashboard-widgets.contract.js +1 -11
  83. package/dist/dashboards/dashboard-widgets.retirement.spec.d.ts +2 -0
  84. package/dist/dashboards/dashboard-widgets.retirement.spec.d.ts.map +1 -0
  85. package/dist/dashboards/dashboard-widgets.retirement.spec.js +22 -0
  86. package/dist/dashboards/dashboard.contract.d.ts +16 -16
  87. package/dist/document-intake/document-intake.automation.spec.d.ts +2 -0
  88. package/dist/document-intake/document-intake.automation.spec.d.ts.map +1 -0
  89. package/dist/document-intake/document-intake.automation.spec.js +469 -0
  90. package/dist/document-intake/document-intake.card-side.spec.d.ts +2 -0
  91. package/dist/document-intake/document-intake.card-side.spec.d.ts.map +1 -0
  92. package/dist/document-intake/document-intake.card-side.spec.js +51 -0
  93. package/dist/document-intake/document-intake.contract.d.ts +9421 -1071
  94. package/dist/document-intake/document-intake.contract.d.ts.map +1 -1
  95. package/dist/document-intake/document-intake.contract.js +219 -5
  96. package/dist/document-intake/document-intake.contract.spec.d.ts +2 -0
  97. package/dist/document-intake/document-intake.contract.spec.d.ts.map +1 -0
  98. package/dist/document-intake/document-intake.contract.spec.js +37 -0
  99. package/dist/document-intake/document-intake.nino.spec.d.ts +2 -0
  100. package/dist/document-intake/document-intake.nino.spec.d.ts.map +1 -0
  101. package/dist/document-intake/document-intake.nino.spec.js +42 -0
  102. package/dist/export-jobs/export-jobs.contract.d.ts +670 -670
  103. package/dist/exports-events/exports-events.schemas.d.ts +4 -4
  104. package/dist/files/files.contract.d.ts +36 -36
  105. package/dist/index.d.ts +21 -9
  106. package/dist/index.d.ts.map +1 -1
  107. package/dist/index.js +21 -9
  108. package/dist/job-clusters/job-clusters.contract.d.ts +52 -52
  109. package/dist/jobs/jobs.contract.d.ts +8714 -8456
  110. package/dist/jobs/jobs.contract.d.ts.map +1 -1
  111. package/dist/kpi-impersonation/kpi-impersonation.contract.d.ts +102 -102
  112. package/dist/lead-assignments/lead-assignments.contract.d.ts +1290 -1219
  113. package/dist/lead-assignments/lead-assignments.contract.d.ts.map +1 -1
  114. package/dist/lead-distribution/agent-lead-distribution.contract.d.ts +330 -306
  115. package/dist/lead-distribution/agent-lead-distribution.contract.d.ts.map +1 -1
  116. package/dist/lead-distribution/lead-distribution-config.contract.d.ts +10 -10
  117. package/dist/leads/leads.contract.d.ts +245 -245
  118. package/dist/locations/locations.contract.d.ts +46 -46
  119. package/dist/notifications/notifications.contract.d.ts +85 -85
  120. package/dist/offices/offices.contract.d.ts +24 -24
  121. package/dist/outreach/__tests__/outreach-claim.test.js +33 -0
  122. package/dist/outreach/__tests__/outreach-contract-additions.spec.js +27 -0
  123. package/dist/outreach/__tests__/outreach-routes.test.js +8 -0
  124. package/dist/outreach/lab-outreach.contract.d.ts +48 -48
  125. package/dist/outreach/outreach-requests.contract.d.ts +272 -272
  126. package/dist/outreach/outreach-requests.schemas.d.ts +14 -14
  127. package/dist/outreach/outreach.contract.d.ts +583 -162
  128. package/dist/outreach/outreach.contract.d.ts.map +1 -1
  129. package/dist/outreach/outreach.contract.js +50 -1
  130. package/dist/outreach/outreach.schemas.d.ts +2 -2
  131. package/dist/outreach/relay-hub-outreach.contract.d.ts +1334 -0
  132. package/dist/outreach/relay-hub-outreach.contract.d.ts.map +1 -0
  133. package/dist/outreach/relay-hub-outreach.contract.js +113 -0
  134. package/dist/outreach/relay-hub-outreach.contract.spec.d.ts +2 -0
  135. package/dist/outreach/relay-hub-outreach.contract.spec.d.ts.map +1 -0
  136. package/dist/outreach/relay-hub-outreach.contract.spec.js +145 -0
  137. package/dist/outreach/relay-hub-outreach.schemas.d.ts +94 -0
  138. package/dist/outreach/relay-hub-outreach.schemas.d.ts.map +1 -0
  139. package/dist/outreach/relay-hub-outreach.schemas.js +15 -0
  140. package/dist/own-research/check-phone-response.spec.d.ts +2 -0
  141. package/dist/own-research/check-phone-response.spec.d.ts.map +1 -0
  142. package/dist/own-research/check-phone-response.spec.js +54 -0
  143. package/dist/own-research/own-research.contract.d.ts +1152 -1067
  144. package/dist/own-research/own-research.contract.d.ts.map +1 -1
  145. package/dist/own-research/own-research.contract.js +6 -1
  146. package/dist/proofs/proofs.contract.d.ts +196 -196
  147. package/dist/proofs/proofs.dtos.d.ts +104 -104
  148. package/dist/qualifications/qualifications.contract.d.ts +22 -22
  149. package/dist/realtime/realtime-telemetry.contract.d.ts +181 -0
  150. package/dist/realtime/realtime-telemetry.contract.d.ts.map +1 -0
  151. package/dist/realtime/realtime-telemetry.contract.js +81 -0
  152. package/dist/realtime/realtime-telemetry.contract.spec.d.ts +2 -0
  153. package/dist/realtime/realtime-telemetry.contract.spec.d.ts.map +1 -0
  154. package/dist/realtime/realtime-telemetry.contract.spec.js +41 -0
  155. package/dist/relay-pods/build-relay-pod-membership-rules.d.ts +9 -0
  156. package/dist/relay-pods/build-relay-pod-membership-rules.d.ts.map +1 -0
  157. package/dist/relay-pods/build-relay-pod-membership-rules.js +17 -0
  158. package/dist/relay-pods/build-relay-pod-membership-rules.spec.d.ts +2 -0
  159. package/dist/relay-pods/build-relay-pod-membership-rules.spec.d.ts.map +1 -0
  160. package/dist/relay-pods/build-relay-pod-membership-rules.spec.js +20 -0
  161. package/dist/relay-pods/relay-hub.contract.d.ts +1463 -0
  162. package/dist/relay-pods/relay-hub.contract.d.ts.map +1 -0
  163. package/dist/relay-pods/relay-hub.contract.js +140 -0
  164. package/dist/relay-pods/relay-hub.contract.spec.d.ts +2 -0
  165. package/dist/relay-pods/relay-hub.contract.spec.d.ts.map +1 -0
  166. package/dist/relay-pods/relay-hub.contract.spec.js +180 -0
  167. package/dist/relay-pods/relay-hub.schemas.d.ts +577 -0
  168. package/dist/relay-pods/relay-hub.schemas.d.ts.map +1 -0
  169. package/dist/relay-pods/relay-hub.schemas.js +158 -0
  170. package/dist/relay-pods/relay-lab-fleet.contract.d.ts +81 -81
  171. package/dist/relay-pods/relay-lab-fleet.schemas.d.ts +53 -53
  172. package/dist/{curated-worker-leads/lead-agent-area.contract.d.ts → relay-pods/relay-pod-members.contract.d.ts} +233 -126
  173. package/dist/relay-pods/relay-pod-members.contract.d.ts.map +1 -0
  174. package/dist/relay-pods/relay-pod-members.contract.js +73 -0
  175. package/dist/relay-pods/relay-pod-sessions.contract.d.ts +58 -58
  176. package/dist/relay-pods/relay-pods.contract.d.ts +169 -169
  177. package/dist/relay-pods/relay-pods.schemas.d.ts +46 -46
  178. package/dist/shared/summary-schemas.d.ts +10 -10
  179. package/dist/sheets-sync/__tests__/sheets-sync-events.schemas.test.js +22 -2
  180. package/dist/sheets-sync/sheets-sync-events.schemas.d.ts +30 -0
  181. package/dist/sheets-sync/sheets-sync-events.schemas.d.ts.map +1 -1
  182. package/dist/sheets-sync/sheets-sync-events.schemas.js +16 -1
  183. package/dist/sheets-sync/sheets-sync.contract.d.ts +829 -262
  184. package/dist/sheets-sync/sheets-sync.contract.d.ts.map +1 -1
  185. package/dist/sheets-sync/sheets-sync.contract.js +156 -34
  186. package/dist/telegram/telegram.contract.d.ts +12 -12
  187. package/dist/trades/trades.contract.d.ts +16 -16
  188. package/dist/user-access-grants/user-access-grants.contract.d.ts +383 -383
  189. package/dist/users/__tests__/assignable-roles.spec.js +1 -1
  190. package/dist/users/users.contract.d.ts +462 -431
  191. package/dist/users/users.contract.d.ts.map +1 -1
  192. package/dist/users/users.contract.js +19 -8
  193. package/dist/users/users.contract.spec.js +54 -0
  194. package/dist/voice-screener/voice-screener.contract.d.ts +237 -0
  195. package/dist/voice-screener/voice-screener.contract.d.ts.map +1 -0
  196. package/dist/voice-screener/voice-screener.contract.js +89 -0
  197. package/dist/worker-identity-cases/worker-identity-cases.contract.d.ts +500 -260
  198. package/dist/worker-identity-cases/worker-identity-cases.contract.d.ts.map +1 -1
  199. package/dist/worker-identity-cases/worker-identity-cases.contract.js +17 -1
  200. package/dist/worker-merge-proposals/worker-merge-proposals.contract.d.ts +130 -130
  201. package/dist/worker-source-identity-conflicts/worker-source-identity-conflicts.contract.d.ts +151 -151
  202. package/dist/worker-source-identity-conflicts/worker-source-identity-conflicts.schemas.d.ts +15 -15
  203. package/dist/workers/do-not-contact.contract.d.ts +4 -4
  204. package/dist/workers/qualification-back-proof.spec.d.ts +2 -0
  205. package/dist/workers/qualification-back-proof.spec.d.ts.map +1 -0
  206. package/dist/workers/qualification-back-proof.spec.js +39 -0
  207. package/dist/workers/workers.contract.d.ts +3416 -3178
  208. package/dist/workers/workers.contract.d.ts.map +1 -1
  209. package/dist/workers/workers.contract.js +17 -0
  210. package/package.json +1 -1
  211. package/dist/curated-worker-leads/consent-queue.contract.d.ts +0 -4527
  212. package/dist/curated-worker-leads/consent-queue.contract.d.ts.map +0 -1
  213. package/dist/curated-worker-leads/consent-queue.contract.js +0 -201
  214. package/dist/curated-worker-leads/curated-worker-leads.contract.d.ts +0 -135
  215. package/dist/curated-worker-leads/curated-worker-leads.contract.d.ts.map +0 -1
  216. package/dist/curated-worker-leads/curated-worker-leads.contract.js +0 -32
  217. package/dist/curated-worker-leads/lead-agent-area.contract.d.ts.map +0 -1
  218. package/dist/curated-worker-leads/lead-agent-area.contract.js +0 -51
@@ -1 +1 @@
1
- {"version":3,"file":"users.contract.d.ts","sourceRoot":"","sources":["../../contracts/users/users.contract.ts"],"names":[],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8MzB,CAAC"}
1
+ {"version":3,"file":"users.contract.d.ts","sourceRoot":"","sources":["../../contracts/users/users.contract.ts"],"names":[],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8MzB,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.usersContract = exports.CheckUserAvailabilityResponseSchema = exports.CheckUserAvailabilityQuerySchema = exports.AvailabilityConflictUserSchema = exports.PhoneConflictResponseSchema = exports.PhoneConflictSchema = exports.PaginatedUserResponseSchema = exports.UpdatePreferencesSchema = exports.UpdateAvatarSchema = exports.ChangePasswordSchema = exports.ProfileSchema = exports.FilterUserSchema = exports.BatchUpdateUserResponseSchema = exports.BatchUpdateUserSchema = exports.BulkUpdateUserDataSchema = exports.UpdateUserSchema = exports.CreateUserSchema = exports.UserSchema = exports.RolesFilterSchema = exports.UserAutocompleteArraySchema = exports.UserAutocompleteResponseSchema = exports.UpsertUserPhoneNumberSchema = exports.CreateUserPhoneNumberSchema = exports.UserPhoneNumberSchema = exports.UserSortFieldMapping = exports.UserSortableFieldsSchema = exports.UserStatusSchema = exports.AssignableRolesSchema = exports.UserRoleSchema = void 0;
3
+ exports.usersContract = exports.CheckUserAvailabilityResponseSchema = exports.CheckUserAvailabilityQuerySchema = exports.AvailabilityConflictUserSchema = exports.PhoneConflictResponseSchema = exports.PhoneConflictSchema = exports.PaginatedUserResponseSchema = exports.UpdatePreferencesSchema = exports.UpdateAvatarSchema = exports.ChangePasswordSchema = exports.ProfileSchema = exports.FilterUserSchema = exports.BatchUpdateUserResponseSchema = exports.BatchUpdateUserSchema = exports.BulkUpdateUserDataSchema = exports.UpdateUserSchema = exports.CreateUserSchema = exports.UserSchema = exports.RolesFilterSchema = exports.UserAutocompleteArraySchema = exports.UserAutocompleteResponseSchema = exports.UpsertUserPhoneNumberSchema = exports.CreateUserPhoneNumberSchema = exports.UserPhoneNumberSchema = exports.UserSortFieldMapping = exports.UserSortableFieldsSchema = exports.DialpadUserIdSchema = exports.UserStatusSchema = exports.AssignableRolesSchema = exports.UserRoleSchema = void 0;
4
4
  const zod_openapi_1 = require("@anatine/zod-openapi");
5
5
  const core_1 = require("@ts-rest/core");
6
6
  const zod_1 = require("zod");
@@ -27,11 +27,13 @@ exports.UserRoleSchema = zod_1.z.enum([
27
27
  * rule: INTERCONNECTION is a modifier role (it only lifts curated-lead
28
28
  * scoping) and is only valid alongside SECOND_AGENT.
29
29
  *
30
- * OUTREACH is a second modifier layered on top of that pair. It gates every
31
- * outreach surface and requires BOTH partners. No separate "not with ADMIN"
32
- * rule is needed INTERCONNECTION already forbids ADMIN and WORKER_CURATOR,
33
- * so the exclusion is transitive, and the only viable set carrying OUTREACH is
34
- * [SECOND_AGENT, INTERCONNECTION, OUTREACH] plus non-conflicting extras.
30
+ * OUTREACH is valid either as a modifier on the SECOND_AGENT + INTERCONNECTION
31
+ * pair, or paired with FIRST_AGENT alone for lab-only outreach. The two
32
+ * pairings grant different things (see CaslAbilityFactory): only the former
33
+ * gets OutreachRequest authority, while relay pod access itself is
34
+ * membership-derived and applies to both. No separate "not with ADMIN" rule
35
+ * is needed for the SECOND_AGENT + INTERCONNECTION case — INTERCONNECTION
36
+ * already forbids ADMIN and WORKER_CURATOR, so the exclusion is transitive.
35
37
  */
36
38
  exports.AssignableRolesSchema = zod_1.z
37
39
  .array(exports.UserRoleSchema)
@@ -41,12 +43,19 @@ exports.AssignableRolesSchema = zod_1.z
41
43
  message: 'INTERCONNECTION cannot be combined with ADMIN or WORKER_CURATOR',
42
44
  })
43
45
  .refine((roles) => !roles.includes('OUTREACH') ||
44
- (roles.includes('SECOND_AGENT') && roles.includes('INTERCONNECTION')), {
45
- message: 'OUTREACH requires both the SECOND_AGENT and INTERCONNECTION roles',
46
+ (roles.includes('SECOND_AGENT') && roles.includes('INTERCONNECTION')) ||
47
+ roles.includes('FIRST_AGENT'), {
48
+ message: 'OUTREACH requires either FIRST_AGENT, or both SECOND_AGENT and INTERCONNECTION',
46
49
  });
47
50
  exports.UserStatusSchema = zod_1.z.enum(['ACTIVE', 'INACTIVE'], {
48
51
  message: 'Required',
49
52
  });
53
+ exports.DialpadUserIdSchema = zod_1.z
54
+ .string()
55
+ .trim()
56
+ .refine((value) => value === '' || /^[1-9]\d*$/.test(value), 'Dialpad user ID must be a positive decimal ID')
57
+ .transform((value) => (value === '' ? null : value))
58
+ .nullable();
50
59
  exports.UserSortableFieldsSchema = zod_1.z.enum([
51
60
  'lastName',
52
61
  'firstName',
@@ -105,6 +114,7 @@ exports.UserSchema = zod_1.z.object({
105
114
  .optional()
106
115
  .describe('Users that this KPI user can impersonate'),
107
116
  status: exports.UserStatusSchema.describe("The user's account status."),
117
+ dialpadUserId: exports.DialpadUserIdSchema.optional().describe('Dialpad user ID'),
108
118
  createdAt: zod_1.z
109
119
  .union([zod_1.z.string().datetime(), zod_1.z.date()])
110
120
  .transform((val) => (val instanceof Date ? val.toISOString() : val))
@@ -158,6 +168,7 @@ exports.UpdateUserSchema = zod_1.z
158
168
  .optional()
159
169
  .describe('User IDs that this KPI user can impersonate'),
160
170
  status: exports.UserStatusSchema.describe('Account status'),
171
+ dialpadUserId: exports.DialpadUserIdSchema.optional().describe('Dialpad user ID'),
161
172
  })
162
173
  .partial()
163
174
  .openapi({ title: 'UpdateUser' });
@@ -101,3 +101,57 @@ describe('INTERCONNECTION exclusivity (candidate-only curated access)', () => {
101
101
  expect(result.success).toBe(true);
102
102
  });
103
103
  });
104
+ describe('OUTREACH role pairing', () => {
105
+ it('accepts OUTREACH with FIRST_AGENT', () => {
106
+ expect(users_contract_1.AssignableRolesSchema.safeParse(['FIRST_AGENT', 'OUTREACH']).success).toBe(true);
107
+ });
108
+ it('accepts OUTREACH with SECOND_AGENT + INTERCONNECTION', () => {
109
+ expect(users_contract_1.AssignableRolesSchema.safeParse([
110
+ 'SECOND_AGENT',
111
+ 'INTERCONNECTION',
112
+ 'OUTREACH',
113
+ ]).success).toBe(true);
114
+ });
115
+ it('rejects OUTREACH on its own', () => {
116
+ expect(users_contract_1.AssignableRolesSchema.safeParse(['OUTREACH']).success).toBe(false);
117
+ });
118
+ });
119
+ describe('Dialpad user mapping', () => {
120
+ it('accepts positive decimal IDs and null clears', () => {
121
+ expect(users_contract_1.UpdateUserSchema.parse({ dialpadUserId: '123456789' })).toEqual({
122
+ dialpadUserId: '123456789',
123
+ });
124
+ expect(users_contract_1.UpdateUserSchema.parse({ dialpadUserId: null })).toEqual({
125
+ dialpadUserId: null,
126
+ });
127
+ expect(users_contract_1.UpdateUserSchema.parse({ dialpadUserId: ' ' })).toEqual({
128
+ dialpadUserId: null,
129
+ });
130
+ });
131
+ it('rejects non-decimal provider identifiers', () => {
132
+ expect(users_contract_1.UpdateUserSchema.safeParse({ dialpadUserId: 'agent@example.com' })
133
+ .success).toBe(false);
134
+ expect(users_contract_1.UpdateUserSchema.safeParse({ dialpadUserId: '0123456789' }).success).toBe(false);
135
+ });
136
+ it('keeps the mapping out of create and bulk update payloads', () => {
137
+ const createResult = users_contract_1.CreateUserSchema.safeParse({
138
+ firstName: 'Ana',
139
+ lastName: 'Pop',
140
+ email: 'ana.pop@example.com',
141
+ phoneNumbers: [
142
+ { phoneNumber: '+441234567890', isPrimary: true, description: '' },
143
+ ],
144
+ password: 'correcthorse',
145
+ dialpadUserId: '123456789',
146
+ });
147
+ expect(createResult.success).toBe(true);
148
+ if (createResult.success) {
149
+ expect(createResult.data).not.toHaveProperty('dialpadUserId');
150
+ }
151
+ const bulkResult = users_contract_1.BulkUpdateUserDataSchema.parse({
152
+ status: 'ACTIVE',
153
+ dialpadUserId: '123456789',
154
+ });
155
+ expect(bulkResult).not.toHaveProperty('dialpadUserId');
156
+ });
157
+ });
@@ -0,0 +1,237 @@
1
+ import { z } from 'zod';
2
+ export declare const VoiceScreeningStatusSchema: z.ZodEnum<["PENDING", "DIALING", "IN_PROGRESS", "COMPLETED", "NO_ANSWER", "VOICEMAIL", "DECLINED", "FAILED", "CANCELED"]>;
3
+ export declare const VoiceScreeningSubjectKindSchema: z.ZodEnum<["OWNED", "CURATED"]>;
4
+ export declare const VoiceScreeningTurnSchema: z.ZodObject<{
5
+ role: z.ZodEnum<["WORKER", "AI"]>;
6
+ text: z.ZodString;
7
+ at: z.ZodString;
8
+ }, "strip", z.ZodTypeAny, {
9
+ at: string;
10
+ role: "AI" | "WORKER";
11
+ text: string;
12
+ }, {
13
+ at: string;
14
+ role: "AI" | "WORKER";
15
+ text: string;
16
+ }>;
17
+ export declare const VoiceScreeningDetailSchema: z.ZodObject<{
18
+ id: z.ZodString;
19
+ jobId: z.ZodString;
20
+ subjectKind: z.ZodEnum<["OWNED", "CURATED"]>;
21
+ subjectId: z.ZodString;
22
+ status: z.ZodEnum<["PENDING", "DIALING", "IN_PROGRESS", "COMPLETED", "NO_ANSWER", "VOICEMAIL", "DECLINED", "FAILED", "CANCELED"]>;
23
+ startedAt: z.ZodNullable<z.ZodString>;
24
+ endedAt: z.ZodNullable<z.ZodString>;
25
+ durationSeconds: z.ZodNullable<z.ZodNumber>;
26
+ transcript: z.ZodNullable<z.ZodArray<z.ZodObject<{
27
+ role: z.ZodEnum<["WORKER", "AI"]>;
28
+ text: z.ZodString;
29
+ at: z.ZodString;
30
+ }, "strip", z.ZodTypeAny, {
31
+ at: string;
32
+ role: "AI" | "WORKER";
33
+ text: string;
34
+ }, {
35
+ at: string;
36
+ role: "AI" | "WORKER";
37
+ text: string;
38
+ }>, "many">>;
39
+ outcome: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
40
+ fidelityFlag: z.ZodNullable<z.ZodString>;
41
+ recordingUrl: z.ZodNullable<z.ZodString>;
42
+ isTest: z.ZodBoolean;
43
+ }, "strip", z.ZodTypeAny, {
44
+ status: "PENDING" | "NO_ANSWER" | "COMPLETED" | "FAILED" | "IN_PROGRESS" | "DECLINED" | "CANCELED" | "DIALING" | "VOICEMAIL";
45
+ id: string;
46
+ jobId: string;
47
+ subjectKind: "OWNED" | "CURATED";
48
+ subjectId: string;
49
+ outcome: Record<string, unknown> | null;
50
+ startedAt: string | null;
51
+ endedAt: string | null;
52
+ durationSeconds: number | null;
53
+ transcript: {
54
+ at: string;
55
+ role: "AI" | "WORKER";
56
+ text: string;
57
+ }[] | null;
58
+ fidelityFlag: string | null;
59
+ recordingUrl: string | null;
60
+ isTest: boolean;
61
+ }, {
62
+ status: "PENDING" | "NO_ANSWER" | "COMPLETED" | "FAILED" | "IN_PROGRESS" | "DECLINED" | "CANCELED" | "DIALING" | "VOICEMAIL";
63
+ id: string;
64
+ jobId: string;
65
+ subjectKind: "OWNED" | "CURATED";
66
+ subjectId: string;
67
+ outcome: Record<string, unknown> | null;
68
+ startedAt: string | null;
69
+ endedAt: string | null;
70
+ durationSeconds: number | null;
71
+ transcript: {
72
+ at: string;
73
+ role: "AI" | "WORKER";
74
+ text: string;
75
+ }[] | null;
76
+ fidelityFlag: string | null;
77
+ recordingUrl: string | null;
78
+ isTest: boolean;
79
+ }>;
80
+ export type VoiceScreeningDetail = z.infer<typeof VoiceScreeningDetailSchema>;
81
+ export declare const TestVoiceScreeningCallBodySchema: z.ZodObject<{
82
+ phone: z.ZodString;
83
+ jobId: z.ZodString;
84
+ }, "strip", z.ZodTypeAny, {
85
+ phone: string;
86
+ jobId: string;
87
+ }, {
88
+ phone: string;
89
+ jobId: string;
90
+ }>;
91
+ export type TestVoiceScreeningCallBody = z.infer<typeof TestVoiceScreeningCallBodySchema>;
92
+ export declare const voiceScreeningsContract: {
93
+ get: {
94
+ pathParams: z.ZodObject<{
95
+ id: z.ZodString;
96
+ }, "strip", z.ZodTypeAny, {
97
+ id: string;
98
+ }, {
99
+ id: string;
100
+ }>;
101
+ summary: "Fetch one voice screening — admin, or the screening's own agent";
102
+ method: "GET";
103
+ path: "/v2/voice-screenings/:id";
104
+ responses: {
105
+ 200: z.ZodObject<{
106
+ id: z.ZodString;
107
+ jobId: z.ZodString;
108
+ subjectKind: z.ZodEnum<["OWNED", "CURATED"]>;
109
+ subjectId: z.ZodString;
110
+ status: z.ZodEnum<["PENDING", "DIALING", "IN_PROGRESS", "COMPLETED", "NO_ANSWER", "VOICEMAIL", "DECLINED", "FAILED", "CANCELED"]>;
111
+ startedAt: z.ZodNullable<z.ZodString>;
112
+ endedAt: z.ZodNullable<z.ZodString>;
113
+ durationSeconds: z.ZodNullable<z.ZodNumber>;
114
+ transcript: z.ZodNullable<z.ZodArray<z.ZodObject<{
115
+ role: z.ZodEnum<["WORKER", "AI"]>;
116
+ text: z.ZodString;
117
+ at: z.ZodString;
118
+ }, "strip", z.ZodTypeAny, {
119
+ at: string;
120
+ role: "AI" | "WORKER";
121
+ text: string;
122
+ }, {
123
+ at: string;
124
+ role: "AI" | "WORKER";
125
+ text: string;
126
+ }>, "many">>;
127
+ outcome: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
128
+ fidelityFlag: z.ZodNullable<z.ZodString>;
129
+ recordingUrl: z.ZodNullable<z.ZodString>;
130
+ isTest: z.ZodBoolean;
131
+ }, "strip", z.ZodTypeAny, {
132
+ status: "PENDING" | "NO_ANSWER" | "COMPLETED" | "FAILED" | "IN_PROGRESS" | "DECLINED" | "CANCELED" | "DIALING" | "VOICEMAIL";
133
+ id: string;
134
+ jobId: string;
135
+ subjectKind: "OWNED" | "CURATED";
136
+ subjectId: string;
137
+ outcome: Record<string, unknown> | null;
138
+ startedAt: string | null;
139
+ endedAt: string | null;
140
+ durationSeconds: number | null;
141
+ transcript: {
142
+ at: string;
143
+ role: "AI" | "WORKER";
144
+ text: string;
145
+ }[] | null;
146
+ fidelityFlag: string | null;
147
+ recordingUrl: string | null;
148
+ isTest: boolean;
149
+ }, {
150
+ status: "PENDING" | "NO_ANSWER" | "COMPLETED" | "FAILED" | "IN_PROGRESS" | "DECLINED" | "CANCELED" | "DIALING" | "VOICEMAIL";
151
+ id: string;
152
+ jobId: string;
153
+ subjectKind: "OWNED" | "CURATED";
154
+ subjectId: string;
155
+ outcome: Record<string, unknown> | null;
156
+ startedAt: string | null;
157
+ endedAt: string | null;
158
+ durationSeconds: number | null;
159
+ transcript: {
160
+ at: string;
161
+ role: "AI" | "WORKER";
162
+ text: string;
163
+ }[] | null;
164
+ fidelityFlag: string | null;
165
+ recordingUrl: string | null;
166
+ isTest: boolean;
167
+ }>;
168
+ 403: z.ZodObject<{
169
+ message: z.ZodString;
170
+ }, "strip", z.ZodTypeAny, {
171
+ message: string;
172
+ }, {
173
+ message: string;
174
+ }>;
175
+ 404: z.ZodObject<{
176
+ message: z.ZodString;
177
+ }, "strip", z.ZodTypeAny, {
178
+ message: string;
179
+ }, {
180
+ message: string;
181
+ }>;
182
+ };
183
+ };
184
+ testCall: {
185
+ summary: "Admin-only smoke tool: dials `phone` immediately, bypassing every eligibility gate";
186
+ method: "POST";
187
+ body: z.ZodObject<{
188
+ phone: z.ZodString;
189
+ jobId: z.ZodString;
190
+ }, "strip", z.ZodTypeAny, {
191
+ phone: string;
192
+ jobId: string;
193
+ }, {
194
+ phone: string;
195
+ jobId: string;
196
+ }>;
197
+ path: "/v2/voice-screenings/test-call";
198
+ responses: {
199
+ 202: z.ZodObject<{
200
+ screeningId: z.ZodString;
201
+ }, "strip", z.ZodTypeAny, {
202
+ screeningId: string;
203
+ }, {
204
+ screeningId: string;
205
+ }>;
206
+ 403: z.ZodObject<{
207
+ message: z.ZodString;
208
+ }, "strip", z.ZodTypeAny, {
209
+ message: string;
210
+ }, {
211
+ message: string;
212
+ }>;
213
+ 404: z.ZodObject<{
214
+ message: z.ZodString;
215
+ }, "strip", z.ZodTypeAny, {
216
+ message: string;
217
+ }, {
218
+ message: string;
219
+ }>;
220
+ 422: z.ZodObject<{
221
+ message: z.ZodString;
222
+ }, "strip", z.ZodTypeAny, {
223
+ message: string;
224
+ }, {
225
+ message: string;
226
+ }>;
227
+ 409: z.ZodObject<{
228
+ message: z.ZodString;
229
+ }, "strip", z.ZodTypeAny, {
230
+ message: string;
231
+ }, {
232
+ message: string;
233
+ }>;
234
+ };
235
+ };
236
+ };
237
+ //# sourceMappingURL=voice-screener.contract.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"voice-screener.contract.d.ts","sourceRoot":"","sources":["../../contracts/voice-screener/voice-screener.contract.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,0BAA0B,2HAUrC,CAAC;AAEH,eAAO,MAAM,+BAA+B,iCAA+B,CAAC;AAE5E,eAAO,MAAM,wBAAwB;;;;;;;;;;;;EAInC,CAAC;AAEH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAwBM,CAAC;AAE9C,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAM9E,eAAO,MAAM,gCAAgC;;;;;;;;;EAG3C,CAAC;AAEH,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAC9C,OAAO,gCAAgC,CACxC,CAAC;AAEF,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+BlC,CAAC"}
@@ -0,0 +1,89 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.voiceScreeningsContract = exports.TestVoiceScreeningCallBodySchema = exports.VoiceScreeningDetailSchema = exports.VoiceScreeningTurnSchema = exports.VoiceScreeningSubjectKindSchema = exports.VoiceScreeningStatusSchema = void 0;
4
+ const zod_openapi_1 = require("@anatine/zod-openapi");
5
+ const core_1 = require("@ts-rest/core");
6
+ const zod_1 = require("zod");
7
+ (0, zod_openapi_1.extendZodWithOpenApi)(zod_1.z);
8
+ const c = (0, core_1.initContract)();
9
+ exports.VoiceScreeningStatusSchema = zod_1.z.enum([
10
+ 'PENDING',
11
+ 'DIALING',
12
+ 'IN_PROGRESS',
13
+ 'COMPLETED',
14
+ 'NO_ANSWER',
15
+ 'VOICEMAIL',
16
+ 'DECLINED',
17
+ 'FAILED',
18
+ 'CANCELED',
19
+ ]);
20
+ exports.VoiceScreeningSubjectKindSchema = zod_1.z.enum(['OWNED', 'CURATED']);
21
+ exports.VoiceScreeningTurnSchema = zod_1.z.object({
22
+ role: zod_1.z.enum(['WORKER', 'AI']),
23
+ text: zod_1.z.string(),
24
+ at: zod_1.z.string(),
25
+ });
26
+ exports.VoiceScreeningDetailSchema = zod_1.z
27
+ .object({
28
+ id: zod_1.z.string().uuid(),
29
+ jobId: zod_1.z.string().uuid(),
30
+ subjectKind: exports.VoiceScreeningSubjectKindSchema,
31
+ subjectId: zod_1.z.string().uuid(),
32
+ status: exports.VoiceScreeningStatusSchema,
33
+ startedAt: zod_1.z.string().nullable(),
34
+ endedAt: zod_1.z.string().nullable(),
35
+ durationSeconds: zod_1.z.number().nullable(),
36
+ transcript: zod_1.z.array(exports.VoiceScreeningTurnSchema).nullable(),
37
+ outcome: zod_1.z.record(zod_1.z.unknown()).nullable(),
38
+ fidelityFlag: zod_1.z.string().nullable(),
39
+ // Presigned via RecordingStoreService.getPlaybackUrl — never a raw R2 key,
40
+ // and never fabricated: null whenever recordingKey is unset, rather than
41
+ // a broken/placeholder link (Task 11).
42
+ recordingUrl: zod_1.z.string().nullable(),
43
+ // True only for rows created by the admin-only test-call smoke endpoint
44
+ // — never a real automatic screening. Exposed here so a test screening
45
+ // is identifiable from the API, not only by querying the DB column
46
+ // directly (see the entity's doc comment for the four downstream
47
+ // consumers that must exclude it once they exist).
48
+ isTest: zod_1.z.boolean(),
49
+ })
50
+ .openapi({ title: 'VoiceScreeningDetail' });
51
+ // Admin-only, real-jobId-only smoke tool: dials `phone` (never a real
52
+ // candidate's own number) using genuine job/worker data sourced from the
53
+ // given job so nothing spoken on the call is fabricated. See Task 11's
54
+ // controller for how the underlying screening's subject is chosen.
55
+ exports.TestVoiceScreeningCallBodySchema = zod_1.z.object({
56
+ phone: zod_1.z.string().min(1),
57
+ jobId: zod_1.z.string().uuid(),
58
+ });
59
+ exports.voiceScreeningsContract = c.router({
60
+ get: {
61
+ method: 'GET',
62
+ path: '/v2/voice-screenings/:id',
63
+ pathParams: zod_1.z.object({ id: zod_1.z.string().uuid() }),
64
+ responses: {
65
+ 200: exports.VoiceScreeningDetailSchema,
66
+ 403: zod_1.z.object({ message: zod_1.z.string() }),
67
+ 404: zod_1.z.object({ message: zod_1.z.string() }),
68
+ },
69
+ summary: "Fetch one voice screening — admin, or the screening's own agent",
70
+ },
71
+ testCall: {
72
+ method: 'POST',
73
+ path: '/v2/voice-screenings/test-call',
74
+ body: exports.TestVoiceScreeningCallBodySchema,
75
+ responses: {
76
+ 202: zod_1.z.object({ screeningId: zod_1.z.string().uuid() }),
77
+ 403: zod_1.z.object({ message: zod_1.z.string() }),
78
+ 404: zod_1.z.object({ message: zod_1.z.string() }),
79
+ 422: zod_1.z.object({ message: zod_1.z.string() }),
80
+ // The sourced candidate already has an in-flight (non-terminal)
81
+ // screening — the DB's one-in-flight-per-subject partial unique index
82
+ // (Task 14 fix round, Finding 1) rejected the insert. A clear,
83
+ // expected conflict, not a server error: try again once the other
84
+ // call (real or test) finishes.
85
+ 409: zod_1.z.object({ message: zod_1.z.string() }),
86
+ },
87
+ summary: 'Admin-only smoke tool: dials `phone` immediately, bypassing every eligibility gate',
88
+ },
89
+ });