@dakkitor/api-contracts 1.1.154 → 1.5.0

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 (353) hide show
  1. package/dist/abilities/abilities.contract.d.ts +55 -1
  2. package/dist/abilities/abilities.contract.d.ts.map +1 -1
  3. package/dist/abilities/abilities.contract.js +95 -1
  4. package/dist/abilities/abilities.contract.spec.d.ts +2 -0
  5. package/dist/abilities/abilities.contract.spec.d.ts.map +1 -0
  6. package/dist/abilities/abilities.contract.spec.js +145 -0
  7. package/dist/abilities/admin-dashboard.abilities.test.d.ts +2 -0
  8. package/dist/abilities/admin-dashboard.abilities.test.d.ts.map +1 -0
  9. package/dist/abilities/admin-dashboard.abilities.test.js +33 -0
  10. package/dist/abilities/admin.abilities.json +19 -0
  11. package/dist/abilities/bot.abilities.json +13 -4
  12. package/dist/abilities/first-agent.abilities.json +330 -70
  13. package/dist/abilities/interconnection.abilities.json +75 -0
  14. package/dist/abilities/kpi.abilities.json +68 -0
  15. package/dist/abilities/office-manager.abilities.json +111 -0
  16. package/dist/abilities/outreach-service.abilities.json +14 -0
  17. package/dist/abilities/second-agent.abilities.json +430 -43
  18. package/dist/abilities/team-leads.json +71 -6
  19. package/dist/abilities/worker-curator.abilities.json +233 -0
  20. package/dist/actives/actives.contract.d.ts +15521 -19793
  21. package/dist/actives/actives.contract.d.ts.map +1 -1
  22. package/dist/actives/actives.contract.js +517 -114
  23. package/dist/agent-client-links/agent-client-links.contract.d.ts +1431 -291
  24. package/dist/agent-client-links/agent-client-links.contract.d.ts.map +1 -1
  25. package/dist/auth/auth.contract.d.ts +1050 -81
  26. package/dist/auth/auth.contract.d.ts.map +1 -1
  27. package/dist/auth/auth.contract.js +115 -3
  28. package/dist/bookings/booking-worker-summary.spec.d.ts +2 -0
  29. package/dist/bookings/booking-worker-summary.spec.d.ts.map +1 -0
  30. package/dist/bookings/booking-worker-summary.spec.js +25 -0
  31. package/dist/bookings/bookings.contract.d.ts +21631 -27105
  32. package/dist/bookings/bookings.contract.d.ts.map +1 -1
  33. package/dist/bookings/bookings.contract.js +383 -91
  34. package/dist/bookings/bookings.contract.spec.d.ts +2 -0
  35. package/dist/bookings/bookings.contract.spec.d.ts.map +1 -0
  36. package/dist/bookings/bookings.contract.spec.js +11 -0
  37. package/dist/bookings/job-lock.spec.d.ts +2 -0
  38. package/dist/bookings/job-lock.spec.d.ts.map +1 -0
  39. package/dist/bookings/job-lock.spec.js +56 -0
  40. package/dist/bot-parse-cache/bot-parse-cache.contract.d.ts +232 -0
  41. package/dist/bot-parse-cache/bot-parse-cache.contract.d.ts.map +1 -0
  42. package/dist/bot-parse-cache/bot-parse-cache.contract.js +64 -0
  43. package/dist/call-history/call-history.contract.d.ts +1336 -767
  44. package/dist/call-history/call-history.contract.d.ts.map +1 -1
  45. package/dist/call-history/call-history.contract.js +86 -10
  46. package/dist/calls-feed/calls-feed.contract.d.ts +417 -0
  47. package/dist/calls-feed/calls-feed.contract.d.ts.map +1 -0
  48. package/dist/calls-feed/calls-feed.contract.js +32 -0
  49. package/dist/client-contacts/client-contacts.contract.d.ts +410 -226
  50. package/dist/client-contacts/client-contacts.contract.d.ts.map +1 -1
  51. package/dist/client-contacts/client-contacts.contract.js +35 -4
  52. package/dist/clients/clients.contract.d.ts +227 -73
  53. package/dist/clients/clients.contract.d.ts.map +1 -1
  54. package/dist/clients/clients.contract.js +45 -21
  55. package/dist/collaboration-checkings/collaboration-checkings.contract.d.ts +2908 -1834
  56. package/dist/collaboration-checkings/collaboration-checkings.contract.d.ts.map +1 -1
  57. package/dist/collaboration-checkings/collaboration-checkings.contract.js +14 -9
  58. package/dist/collaborations/collaborations.contract.d.ts +2676 -1409
  59. package/dist/collaborations/collaborations.contract.d.ts.map +1 -1
  60. package/dist/collaborations/collaborations.contract.js +33 -9
  61. package/dist/common/call-rating.schema.d.ts.map +1 -1
  62. package/dist/common/call-rating.schema.js +4 -2
  63. package/dist/common/common-schemas.d.ts +59 -11
  64. package/dist/common/common-schemas.d.ts.map +1 -1
  65. package/dist/common/common-schemas.js +55 -29
  66. package/dist/common/error-schemas.d.ts +2 -2
  67. package/dist/common/pagination-query.schema.d.ts +13 -2
  68. package/dist/common/pagination-query.schema.d.ts.map +1 -1
  69. package/dist/common/pagination-query.schema.js +21 -2
  70. package/dist/common/pagination-query.schema.spec.d.ts +2 -0
  71. package/dist/common/pagination-query.schema.spec.d.ts.map +1 -0
  72. package/dist/common/pagination-query.schema.spec.js +53 -0
  73. package/dist/companies/companies.contract.d.ts +53 -28
  74. package/dist/companies/companies.contract.d.ts.map +1 -1
  75. package/dist/companies/companies.contract.js +11 -10
  76. package/dist/crews/crews.contract.d.ts +1010 -196
  77. package/dist/crews/crews.contract.d.ts.map +1 -1
  78. package/dist/crews/crews.contract.js +98 -17
  79. package/dist/crews/crews.contract.spec.d.ts +2 -0
  80. package/dist/crews/crews.contract.spec.d.ts.map +1 -0
  81. package/dist/crews/crews.contract.spec.js +67 -0
  82. package/dist/cron-executions/cron-executions.contract.d.ts +988 -59
  83. package/dist/cron-executions/cron-executions.contract.d.ts.map +1 -1
  84. package/dist/cron-executions/cron-executions.contract.js +127 -7
  85. package/dist/curated-worker-leads/__tests__/disposition-reason.spec.d.ts +2 -0
  86. package/dist/curated-worker-leads/__tests__/disposition-reason.spec.d.ts.map +1 -0
  87. package/dist/curated-worker-leads/__tests__/disposition-reason.spec.js +40 -0
  88. package/dist/curated-worker-leads/candidate-coordination-snapshot.spec.d.ts +2 -0
  89. package/dist/curated-worker-leads/candidate-coordination-snapshot.spec.d.ts.map +1 -0
  90. package/dist/curated-worker-leads/candidate-coordination-snapshot.spec.js +16 -0
  91. package/dist/curated-worker-leads/candidate-coordination.contract.d.ts +21650 -0
  92. package/dist/curated-worker-leads/candidate-coordination.contract.d.ts.map +1 -0
  93. package/dist/curated-worker-leads/candidate-coordination.contract.js +921 -0
  94. package/dist/curated-worker-leads/candidate-coordination.contract.spec.d.ts +2 -0
  95. package/dist/curated-worker-leads/candidate-coordination.contract.spec.d.ts.map +1 -0
  96. package/dist/curated-worker-leads/candidate-coordination.contract.spec.js +51 -0
  97. package/dist/curated-worker-leads/candidate-edit-session.contract.d.ts +2364 -0
  98. package/dist/curated-worker-leads/candidate-edit-session.contract.d.ts.map +1 -0
  99. package/dist/curated-worker-leads/candidate-edit-session.contract.js +173 -0
  100. package/dist/curated-worker-leads/consent-queue.contract.d.ts +4497 -0
  101. package/dist/curated-worker-leads/consent-queue.contract.d.ts.map +1 -0
  102. package/dist/curated-worker-leads/consent-queue.contract.js +201 -0
  103. package/dist/curated-worker-leads/contact-history.spec.d.ts +2 -0
  104. package/dist/curated-worker-leads/contact-history.spec.d.ts.map +1 -0
  105. package/dist/curated-worker-leads/contact-history.spec.js +88 -0
  106. package/dist/curated-worker-leads/contact-session.contract.spec.d.ts +2 -0
  107. package/dist/curated-worker-leads/contact-session.contract.spec.d.ts.map +1 -0
  108. package/dist/curated-worker-leads/contact-session.contract.spec.js +315 -0
  109. package/dist/curated-worker-leads/curated-worker-lead-config.contract.d.ts +489 -0
  110. package/dist/curated-worker-leads/curated-worker-lead-config.contract.d.ts.map +1 -0
  111. package/dist/curated-worker-leads/curated-worker-lead-config.contract.js +88 -0
  112. package/dist/curated-worker-leads/curated-worker-leads.contract.d.ts +135 -0
  113. package/dist/curated-worker-leads/curated-worker-leads.contract.d.ts.map +1 -0
  114. package/dist/curated-worker-leads/curated-worker-leads.contract.js +32 -0
  115. package/dist/curated-worker-leads/job-candidate-cards.spec.d.ts +2 -0
  116. package/dist/curated-worker-leads/job-candidate-cards.spec.d.ts.map +1 -0
  117. package/dist/curated-worker-leads/job-candidate-cards.spec.js +157 -0
  118. package/dist/curated-worker-leads/job-candidates.spec.d.ts +2 -0
  119. package/dist/curated-worker-leads/job-candidates.spec.d.ts.map +1 -0
  120. package/dist/curated-worker-leads/job-candidates.spec.js +140 -0
  121. package/dist/curated-worker-leads/job-feed-match-counts.contract.spec.d.ts +2 -0
  122. package/dist/curated-worker-leads/job-feed-match-counts.contract.spec.d.ts.map +1 -0
  123. package/dist/curated-worker-leads/job-feed-match-counts.contract.spec.js +19 -0
  124. package/dist/curated-worker-leads/jobs-tab.contract.d.ts +18547 -0
  125. package/dist/curated-worker-leads/jobs-tab.contract.d.ts.map +1 -0
  126. package/dist/curated-worker-leads/jobs-tab.contract.js +672 -0
  127. package/dist/curated-worker-leads/lead-agent-area.contract.d.ts +348 -0
  128. package/dist/curated-worker-leads/lead-agent-area.contract.d.ts.map +1 -0
  129. package/dist/curated-worker-leads/lead-agent-area.contract.js +51 -0
  130. package/dist/curated-worker-leads/owned-jobs-tab.contract.d.ts +1116 -0
  131. package/dist/curated-worker-leads/owned-jobs-tab.contract.d.ts.map +1 -0
  132. package/dist/curated-worker-leads/owned-jobs-tab.contract.js +93 -0
  133. package/dist/curated-workers/curated-filter-additions.spec.d.ts +2 -0
  134. package/dist/curated-workers/curated-filter-additions.spec.d.ts.map +1 -0
  135. package/dist/curated-workers/curated-filter-additions.spec.js +17 -0
  136. package/dist/curated-workers/curated-job-seeking.spec.d.ts +2 -0
  137. package/dist/curated-workers/curated-job-seeking.spec.d.ts.map +1 -0
  138. package/dist/curated-workers/curated-job-seeking.spec.js +53 -0
  139. package/dist/curated-workers/curated-workers-id-documents.spec.d.ts +2 -0
  140. package/dist/curated-workers/curated-workers-id-documents.spec.d.ts.map +1 -0
  141. package/dist/curated-workers/curated-workers-id-documents.spec.js +38 -0
  142. package/dist/curated-workers/curated-workers.contract.d.ts +6160 -1906
  143. package/dist/curated-workers/curated-workers.contract.d.ts.map +1 -1
  144. package/dist/curated-workers/curated-workers.contract.js +333 -51
  145. package/dist/dashboards/agent-daily-metrics.contract.d.ts +10 -10
  146. package/dist/dashboards/agent-daily-metrics.contract.js +1 -1
  147. package/dist/dashboards/dashboard-widgets.contract.d.ts +3777 -473
  148. package/dist/dashboards/dashboard-widgets.contract.d.ts.map +1 -1
  149. package/dist/dashboards/dashboard-widgets.contract.js +527 -29
  150. package/dist/dashboards/dashboard.contract.d.ts +8 -8
  151. package/dist/document-intake/document-intake.contract.d.ts +3132 -0
  152. package/dist/document-intake/document-intake.contract.d.ts.map +1 -0
  153. package/dist/document-intake/document-intake.contract.js +418 -0
  154. package/dist/export-jobs/export-jobs.contract.d.ts +3928 -0
  155. package/dist/export-jobs/export-jobs.contract.d.ts.map +1 -0
  156. package/dist/export-jobs/export-jobs.contract.js +240 -0
  157. package/dist/exports-events/exports-events.schemas.d.ts +90 -0
  158. package/dist/exports-events/exports-events.schemas.d.ts.map +1 -0
  159. package/dist/exports-events/exports-events.schemas.js +56 -0
  160. package/dist/files/files.contract.d.ts +133 -126
  161. package/dist/files/files.contract.d.ts.map +1 -1
  162. package/dist/files/files.contract.js +8 -0
  163. package/dist/health/health.contract.d.ts +4 -4
  164. package/dist/index.d.ts +86 -0
  165. package/dist/index.d.ts.map +1 -1
  166. package/dist/index.js +91 -1
  167. package/dist/interactions/interactions.contract.d.ts +162 -0
  168. package/dist/interactions/interactions.contract.d.ts.map +1 -0
  169. package/dist/interactions/interactions.contract.js +42 -0
  170. package/dist/job-clusters/job-clusters.contract.d.ts +1584 -0
  171. package/dist/job-clusters/job-clusters.contract.d.ts.map +1 -0
  172. package/dist/job-clusters/job-clusters.contract.js +133 -0
  173. package/dist/jobs/jobs.contract.d.ts +16662 -8628
  174. package/dist/jobs/jobs.contract.d.ts.map +1 -1
  175. package/dist/jobs/jobs.contract.js +403 -190
  176. package/dist/jobs/jobs.contract.spec.d.ts +2 -0
  177. package/dist/jobs/jobs.contract.spec.d.ts.map +1 -0
  178. package/dist/jobs/jobs.contract.spec.js +70 -0
  179. package/dist/kpi-impersonation/kpi-impersonation.contract.d.ts +75 -75
  180. package/dist/lead-assignments/lead-assignments.contract.d.ts +2933 -1122
  181. package/dist/lead-assignments/lead-assignments.contract.d.ts.map +1 -1
  182. package/dist/lead-assignments/lead-assignments.contract.js +29 -7
  183. package/dist/lead-distribution/agent-lead-distribution.contract.d.ts +328 -64
  184. package/dist/lead-distribution/agent-lead-distribution.contract.d.ts.map +1 -1
  185. package/dist/lead-distribution/agent-lead-distribution.contract.js +1 -1
  186. package/dist/lead-distribution/lead-distribution-config.contract.d.ts +31 -31
  187. package/dist/leads/leads.contract.d.ts +830 -368
  188. package/dist/leads/leads.contract.d.ts.map +1 -1
  189. package/dist/leads/leads.contract.js +106 -26
  190. package/dist/locations/locations.contract.d.ts +36 -36
  191. package/dist/notifications/notifications.contract.d.ts +1039 -0
  192. package/dist/notifications/notifications.contract.d.ts.map +1 -0
  193. package/dist/notifications/notifications.contract.js +110 -0
  194. package/dist/offices/offices.contract.d.ts +210 -60
  195. package/dist/offices/offices.contract.d.ts.map +1 -1
  196. package/dist/offices/offices.contract.js +18 -4
  197. package/dist/outreach/__tests__/outreach-claim.test.d.ts +2 -0
  198. package/dist/outreach/__tests__/outreach-claim.test.d.ts.map +1 -0
  199. package/dist/outreach/__tests__/outreach-claim.test.js +98 -0
  200. package/dist/outreach/__tests__/outreach-confirm-release.test.d.ts +2 -0
  201. package/dist/outreach/__tests__/outreach-confirm-release.test.d.ts.map +1 -0
  202. package/dist/outreach/__tests__/outreach-confirm-release.test.js +98 -0
  203. package/dist/outreach/__tests__/outreach-contract-additions.spec.d.ts +2 -0
  204. package/dist/outreach/__tests__/outreach-contract-additions.spec.d.ts.map +1 -0
  205. package/dist/outreach/__tests__/outreach-contract-additions.spec.js +78 -0
  206. package/dist/outreach/__tests__/outreach-requests.contract.spec.d.ts +2 -0
  207. package/dist/outreach/__tests__/outreach-requests.contract.spec.d.ts.map +1 -0
  208. package/dist/outreach/__tests__/outreach-requests.contract.spec.js +64 -0
  209. package/dist/outreach/__tests__/outreach-routes.test.d.ts +2 -0
  210. package/dist/outreach/__tests__/outreach-routes.test.d.ts.map +1 -0
  211. package/dist/outreach/__tests__/outreach-routes.test.js +57 -0
  212. package/dist/outreach/__tests__/outreach.schemas.test.d.ts +2 -0
  213. package/dist/outreach/__tests__/outreach.schemas.test.d.ts.map +1 -0
  214. package/dist/outreach/__tests__/outreach.schemas.test.js +144 -0
  215. package/dist/outreach/outreach-requests.contract.d.ts +1108 -0
  216. package/dist/outreach/outreach-requests.contract.d.ts.map +1 -0
  217. package/dist/outreach/outreach-requests.contract.js +134 -0
  218. package/dist/outreach/outreach-requests.schemas.d.ts +49 -0
  219. package/dist/outreach/outreach-requests.schemas.d.ts.map +1 -0
  220. package/dist/outreach/outreach-requests.schemas.js +60 -0
  221. package/dist/outreach/outreach.contract.d.ts +819 -0
  222. package/dist/outreach/outreach.contract.d.ts.map +1 -0
  223. package/dist/outreach/outreach.contract.js +195 -0
  224. package/dist/outreach/outreach.schemas.d.ts +118 -0
  225. package/dist/outreach/outreach.schemas.d.ts.map +1 -0
  226. package/dist/outreach/outreach.schemas.js +135 -0
  227. package/dist/own-research/own-research.contract.d.ts +1356 -552
  228. package/dist/own-research/own-research.contract.d.ts.map +1 -1
  229. package/dist/own-research/own-research.contract.js +14 -3
  230. package/dist/postcodes/postcodes.contract.d.ts +16 -16
  231. package/dist/proofs/proof-category.enum.d.ts +4 -0
  232. package/dist/proofs/proof-category.enum.d.ts.map +1 -0
  233. package/dist/proofs/proof-category.enum.js +5 -0
  234. package/dist/proofs/proof-entity-type.enum.d.ts +4 -0
  235. package/dist/proofs/proof-entity-type.enum.d.ts.map +1 -0
  236. package/dist/proofs/proof-entity-type.enum.js +5 -0
  237. package/dist/proofs/proof-type.enum.d.ts +28 -0
  238. package/dist/proofs/proof-type.enum.d.ts.map +1 -0
  239. package/dist/proofs/proof-type.enum.js +14 -0
  240. package/dist/proofs/proofs.contract.d.ts +3009 -0
  241. package/dist/proofs/proofs.contract.d.ts.map +1 -0
  242. package/dist/proofs/proofs.contract.js +92 -0
  243. package/dist/proofs/proofs.dtos.d.ts +1319 -0
  244. package/dist/proofs/proofs.dtos.d.ts.map +1 -0
  245. package/dist/proofs/proofs.dtos.js +178 -0
  246. package/dist/qualifications/qualifications.contract.d.ts +94 -94
  247. package/dist/realtime/data-changed.d.ts +21 -0
  248. package/dist/realtime/data-changed.d.ts.map +1 -0
  249. package/dist/realtime/data-changed.js +37 -0
  250. package/dist/shared/booking-history.schema.d.ts +27 -0
  251. package/dist/shared/booking-history.schema.d.ts.map +1 -0
  252. package/dist/shared/booking-history.schema.js +22 -0
  253. package/dist/shared/booking-history.spec.d.ts +2 -0
  254. package/dist/shared/booking-history.spec.d.ts.map +1 -0
  255. package/dist/shared/booking-history.spec.js +44 -0
  256. package/dist/shared/contact-suppressions.contract.d.ts +22 -0
  257. package/dist/shared/contact-suppressions.contract.d.ts.map +1 -0
  258. package/dist/shared/contact-suppressions.contract.js +13 -0
  259. package/dist/shared/live-booking.schema.d.ts +57 -0
  260. package/dist/shared/live-booking.schema.d.ts.map +1 -0
  261. package/dist/shared/live-booking.schema.js +34 -0
  262. package/dist/shared/summary-schemas.d.ts +218 -0
  263. package/dist/shared/summary-schemas.d.ts.map +1 -0
  264. package/dist/shared/summary-schemas.js +56 -0
  265. package/dist/sheets-sync/__tests__/sheets-sync-events.schemas.test.d.ts +2 -0
  266. package/dist/sheets-sync/__tests__/sheets-sync-events.schemas.test.d.ts.map +1 -0
  267. package/dist/sheets-sync/__tests__/sheets-sync-events.schemas.test.js +20 -0
  268. package/dist/sheets-sync/__tests__/tab-sync-config.schema.test.d.ts +2 -0
  269. package/dist/sheets-sync/__tests__/tab-sync-config.schema.test.d.ts.map +1 -0
  270. package/dist/sheets-sync/__tests__/tab-sync-config.schema.test.js +41 -0
  271. package/dist/sheets-sync/sheets-sync-events.schemas.d.ts +43 -0
  272. package/dist/sheets-sync/sheets-sync-events.schemas.d.ts.map +1 -0
  273. package/dist/sheets-sync/sheets-sync-events.schemas.js +29 -0
  274. package/dist/sheets-sync/sheets-sync.contract.d.ts +7258 -0
  275. package/dist/sheets-sync/sheets-sync.contract.d.ts.map +1 -0
  276. package/dist/sheets-sync/sheets-sync.contract.js +323 -0
  277. package/dist/telegram/telegram.contract.d.ts +727 -0
  278. package/dist/telegram/telegram.contract.d.ts.map +1 -0
  279. package/dist/telegram/telegram.contract.js +75 -0
  280. package/dist/trades/trade-rate-assessment.d.ts +18 -0
  281. package/dist/trades/trade-rate-assessment.d.ts.map +1 -0
  282. package/dist/trades/trade-rate-assessment.js +46 -0
  283. package/dist/trades/trade-rate-assessment.spec.d.ts +2 -0
  284. package/dist/trades/trade-rate-assessment.spec.d.ts.map +1 -0
  285. package/dist/trades/trade-rate-assessment.spec.js +223 -0
  286. package/dist/trades/trades.contract.d.ts +111 -0
  287. package/dist/trades/trades.contract.d.ts.map +1 -1
  288. package/dist/trades/trades.contract.js +49 -1
  289. package/dist/trades/trades.contract.spec.d.ts +2 -0
  290. package/dist/trades/trades.contract.spec.d.ts.map +1 -0
  291. package/dist/trades/trades.contract.spec.js +173 -0
  292. package/dist/user-access-grants/build-user-access-grant-rules.d.ts +10 -0
  293. package/dist/user-access-grants/build-user-access-grant-rules.d.ts.map +1 -0
  294. package/dist/user-access-grants/build-user-access-grant-rules.js +69 -0
  295. package/dist/user-access-grants/build-user-access-grant-rules.spec.d.ts +2 -0
  296. package/dist/user-access-grants/build-user-access-grant-rules.spec.d.ts.map +1 -0
  297. package/dist/user-access-grants/build-user-access-grant-rules.spec.js +77 -0
  298. package/dist/user-access-grants/user-access-grant-templates.json +454 -0
  299. package/dist/user-access-grants/user-access-grants.contract.d.ts +3886 -0
  300. package/dist/user-access-grants/user-access-grants.contract.d.ts.map +1 -0
  301. package/dist/user-access-grants/user-access-grants.contract.js +189 -0
  302. package/dist/user-access-grants/user-access-grants.contract.spec.d.ts +2 -0
  303. package/dist/user-access-grants/user-access-grants.contract.spec.d.ts.map +1 -0
  304. package/dist/user-access-grants/user-access-grants.contract.spec.js +149 -0
  305. package/dist/users/users.contract.d.ts +1959 -349
  306. package/dist/users/users.contract.d.ts.map +1 -1
  307. package/dist/users/users.contract.js +222 -37
  308. package/dist/users/users.contract.spec.d.ts +2 -0
  309. package/dist/users/users.contract.spec.d.ts.map +1 -0
  310. package/dist/users/users.contract.spec.js +103 -0
  311. package/dist/worker-identity-cases/worker-identity-cases.contract.d.ts +4609 -0
  312. package/dist/worker-identity-cases/worker-identity-cases.contract.d.ts.map +1 -0
  313. package/dist/worker-identity-cases/worker-identity-cases.contract.js +409 -0
  314. package/dist/worker-merge-proposals/worker-merge-proposals.contract.d.ts +1511 -0
  315. package/dist/worker-merge-proposals/worker-merge-proposals.contract.d.ts.map +1 -0
  316. package/dist/worker-merge-proposals/worker-merge-proposals.contract.js +150 -0
  317. package/dist/worker-source-identity-conflicts/worker-source-identity-conflicts.contract.d.ts +1106 -0
  318. package/dist/worker-source-identity-conflicts/worker-source-identity-conflicts.contract.d.ts.map +1 -0
  319. package/dist/worker-source-identity-conflicts/worker-source-identity-conflicts.contract.js +85 -0
  320. package/dist/worker-source-identity-conflicts/worker-source-identity-conflicts.contract.spec.d.ts +2 -0
  321. package/dist/worker-source-identity-conflicts/worker-source-identity-conflicts.contract.spec.d.ts.map +1 -0
  322. package/dist/worker-source-identity-conflicts/worker-source-identity-conflicts.contract.spec.js +216 -0
  323. package/dist/worker-source-identity-conflicts/worker-source-identity-conflicts.schemas.d.ts +453 -0
  324. package/dist/worker-source-identity-conflicts/worker-source-identity-conflicts.schemas.d.ts.map +1 -0
  325. package/dist/worker-source-identity-conflicts/worker-source-identity-conflicts.schemas.js +109 -0
  326. package/dist/workers/do-not-contact.contract.d.ts +46 -0
  327. package/dist/workers/do-not-contact.contract.d.ts.map +1 -0
  328. package/dist/workers/do-not-contact.contract.js +41 -0
  329. package/dist/workers/do-not-contact.contract.spec.d.ts +2 -0
  330. package/dist/workers/do-not-contact.contract.spec.d.ts.map +1 -0
  331. package/dist/workers/do-not-contact.contract.spec.js +47 -0
  332. package/dist/workers/duplicate-group-worker.spec.d.ts +2 -0
  333. package/dist/workers/duplicate-group-worker.spec.d.ts.map +1 -0
  334. package/dist/workers/duplicate-group-worker.spec.js +34 -0
  335. package/dist/workers/filter-exact-flags.spec.d.ts +2 -0
  336. package/dist/workers/filter-exact-flags.spec.d.ts.map +1 -0
  337. package/dist/workers/filter-exact-flags.spec.js +37 -0
  338. package/dist/workers/worker-source-attribution.contract.spec.d.ts +2 -0
  339. package/dist/workers/worker-source-attribution.contract.spec.d.ts.map +1 -0
  340. package/dist/workers/worker-source-attribution.contract.spec.js +442 -0
  341. package/dist/workers/worker-source.spec.d.ts +2 -0
  342. package/dist/workers/worker-source.spec.d.ts.map +1 -0
  343. package/dist/workers/worker-source.spec.js +13 -0
  344. package/dist/workers/worker-status-facets.spec.d.ts +2 -0
  345. package/dist/workers/worker-status-facets.spec.d.ts.map +1 -0
  346. package/dist/workers/worker-status-facets.spec.js +34 -0
  347. package/dist/workers/workers.contract.d.ts +19534 -5969
  348. package/dist/workers/workers.contract.d.ts.map +1 -1
  349. package/dist/workers/workers.contract.js +1096 -113
  350. package/dist/workers/workers.contract.spec.d.ts +2 -0
  351. package/dist/workers/workers.contract.spec.d.ts.map +1 -0
  352. package/dist/workers/workers.contract.spec.js +31 -0
  353. package/package.json +5 -4
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Generic data-changed SSE contract. The API forwards every post-commit
3
+ * {entity}.changed domain event over /v2/events as a coalesced `data.changed`
4
+ * digest; the web maps entities to react-query keys and invalidates.
5
+ *
6
+ * REALTIME_ENTITIES is the canonical list of entities that emit
7
+ * emitEntityChanged(...) — enforced by realtime-entities.arch.spec.ts (API)
8
+ * and the registry completeness test (web).
9
+ */
10
+ export declare const REALTIME_ENTITIES: readonly ["active", "agent_client_link", "booking", "call_history", "client", "client_contact", "collaboration", "company", "crew", "curated_worker", "job", "lead", "location", "office", "own_research_lead", "qualification", "trade", "travel_time", "user", "worker"];
11
+ export type RealtimeEntity = (typeof REALTIME_ENTITIES)[number];
12
+ export declare const DATA_CHANGED_EVENT = "data.changed";
13
+ export interface DataChangedChange {
14
+ entity: RealtimeEntity;
15
+ /** Mutated ids, or 'bulk' when unknown / more than 50 in one window. */
16
+ ids: string[] | 'bulk';
17
+ }
18
+ export interface DataChangedPayload {
19
+ changes: DataChangedChange[];
20
+ }
21
+ //# sourceMappingURL=data-changed.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"data-changed.d.ts","sourceRoot":"","sources":["../../contracts/realtime/data-changed.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,eAAO,MAAM,iBAAiB,4QAuBpB,CAAC;AAEX,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEhE,eAAO,MAAM,kBAAkB,iBAAiB,CAAC;AAEjD,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,cAAc,CAAC;IACvB,wEAAwE;IACxE,GAAG,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,iBAAiB,EAAE,CAAC;CAC9B"}
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DATA_CHANGED_EVENT = exports.REALTIME_ENTITIES = void 0;
4
+ /**
5
+ * Generic data-changed SSE contract. The API forwards every post-commit
6
+ * {entity}.changed domain event over /v2/events as a coalesced `data.changed`
7
+ * digest; the web maps entities to react-query keys and invalidates.
8
+ *
9
+ * REALTIME_ENTITIES is the canonical list of entities that emit
10
+ * emitEntityChanged(...) — enforced by realtime-entities.arch.spec.ts (API)
11
+ * and the registry completeness test (web).
12
+ */
13
+ exports.REALTIME_ENTITIES = [
14
+ 'active',
15
+ 'agent_client_link',
16
+ 'booking',
17
+ 'call_history',
18
+ 'client',
19
+ 'client_contact',
20
+ 'collaboration',
21
+ 'company',
22
+ 'crew',
23
+ 'curated_worker',
24
+ 'job',
25
+ 'lead',
26
+ 'location',
27
+ 'office',
28
+ 'own_research_lead',
29
+ 'qualification',
30
+ 'trade',
31
+ // Commute-data (drive/transit minutes) changed for these JOB ids — emitted by
32
+ // the travel-time queue bridge, not by a domain service. Ability-gated as Job.
33
+ 'travel_time',
34
+ 'user',
35
+ 'worker',
36
+ ];
37
+ exports.DATA_CHANGED_EVENT = 'data.changed';
@@ -0,0 +1,27 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * Booking track record over a worker's linked identity (all owned copies of a
4
+ * curated worker share one identity; an unlinked worker is its own identity).
5
+ * worked = status_category IN_PROGRESS/FINISHED_THE_JOB; noShow =
6
+ * status_type DIDNT_START_BECAUSE_OF_WORKER. byMe = subset booked by the
7
+ * viewing user (computed live per page; totals come from the precomputed
8
+ * worker_booking_stats table).
9
+ */
10
+ export declare const BookingHistorySchema: z.ZodObject<{
11
+ workedTotal: z.ZodNumber;
12
+ workedByMe: z.ZodNumber;
13
+ noShowTotal: z.ZodNumber;
14
+ noShowByMe: z.ZodNumber;
15
+ }, "strip", z.ZodTypeAny, {
16
+ workedTotal: number;
17
+ workedByMe: number;
18
+ noShowTotal: number;
19
+ noShowByMe: number;
20
+ }, {
21
+ workedTotal: number;
22
+ workedByMe: number;
23
+ noShowTotal: number;
24
+ noShowByMe: number;
25
+ }>;
26
+ export type BookingHistory = z.infer<typeof BookingHistorySchema>;
27
+ //# sourceMappingURL=booking-history.schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"booking-history.schema.d.ts","sourceRoot":"","sources":["../../contracts/shared/booking-history.schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB;;;;;;;GAOG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;EAOM,CAAC;AACxC,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC"}
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BookingHistorySchema = void 0;
4
+ const zod_openapi_1 = require("@anatine/zod-openapi");
5
+ const zod_1 = require("zod");
6
+ (0, zod_openapi_1.extendZodWithOpenApi)(zod_1.z);
7
+ /**
8
+ * Booking track record over a worker's linked identity (all owned copies of a
9
+ * curated worker share one identity; an unlinked worker is its own identity).
10
+ * worked = status_category IN_PROGRESS/FINISHED_THE_JOB; noShow =
11
+ * status_type DIDNT_START_BECAUSE_OF_WORKER. byMe = subset booked by the
12
+ * viewing user (computed live per page; totals come from the precomputed
13
+ * worker_booking_stats table).
14
+ */
15
+ exports.BookingHistorySchema = zod_1.z
16
+ .object({
17
+ workedTotal: zod_1.z.number().int().min(0),
18
+ workedByMe: zod_1.z.number().int().min(0),
19
+ noShowTotal: zod_1.z.number().int().min(0),
20
+ noShowByMe: zod_1.z.number().int().min(0),
21
+ })
22
+ .openapi({ title: 'BookingHistory' });
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=booking-history.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"booking-history.spec.d.ts","sourceRoot":"","sources":["../../contracts/shared/booking-history.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const booking_history_schema_1 = require("./booking-history.schema");
4
+ const workers_contract_1 = require("../workers/workers.contract");
5
+ const curated_workers_contract_1 = require("../curated-workers/curated-workers.contract");
6
+ describe('BookingHistory shared schema', () => {
7
+ const history = {
8
+ workedTotal: 3,
9
+ workedByMe: 1,
10
+ noShowTotal: 1,
11
+ noShowByMe: 0,
12
+ };
13
+ it('parses a full object and rejects negatives', () => {
14
+ expect(booking_history_schema_1.BookingHistorySchema.parse(history)).toEqual(history);
15
+ expect(() => booking_history_schema_1.BookingHistorySchema.parse({ ...history, workedTotal: -1 })).toThrow();
16
+ });
17
+ it('WorkerListItemSchema carries optional bookingHistory', () => {
18
+ const base = {
19
+ id: '4b36e83e-9a72-4c8f-9f6d-1e2a3b4c5d6e',
20
+ firstName: 'A',
21
+ hasTools: true,
22
+ hasPpe: false,
23
+ suppression: null,
24
+ createdAt: new Date().toISOString(),
25
+ updatedAt: new Date().toISOString(),
26
+ };
27
+ expect(workers_contract_1.WorkerListItemSchema.parse(base).bookingHistory).toBeUndefined();
28
+ expect(workers_contract_1.WorkerListItemSchema.parse({ ...base, bookingHistory: history })
29
+ .bookingHistory).toEqual(history);
30
+ });
31
+ it('sortable fields include workedCount', () => {
32
+ expect(workers_contract_1.WorkerSortableFieldsSchema.parse('workedCount')).toBe('workedCount');
33
+ expect(curated_workers_contract_1.CuratedWorkerSortableFieldsSchema.parse('workedCount')).toBe('workedCount');
34
+ });
35
+ it('filter schemas accept workedBefore/noShows', () => {
36
+ expect(workers_contract_1.FilterWorkerSchema.parse({
37
+ workedBefore: 'only_with',
38
+ noShows: 'only_without',
39
+ })).toMatchObject({ workedBefore: 'only_with', noShows: 'only_without' });
40
+ expect(curated_workers_contract_1.FilterCuratedWorkerSchema.parse({ workedBefore: 'only_without' })).toMatchObject({
41
+ workedBefore: 'only_without',
42
+ });
43
+ });
44
+ });
@@ -0,0 +1,22 @@
1
+ import { z } from 'zod';
2
+ export declare const SuppressionStateSchema: z.ZodNullable<z.ZodObject<{
3
+ reason: z.ZodString;
4
+ note: z.ZodNullable<z.ZodString>;
5
+ until: z.ZodNullable<z.ZodString>;
6
+ setByName: z.ZodString;
7
+ setAt: z.ZodString;
8
+ }, "strip", z.ZodTypeAny, {
9
+ reason: string;
10
+ note: string | null;
11
+ until: string | null;
12
+ setByName: string;
13
+ setAt: string;
14
+ }, {
15
+ reason: string;
16
+ note: string | null;
17
+ until: string | null;
18
+ setByName: string;
19
+ setAt: string;
20
+ }>>;
21
+ export type SuppressionState = z.infer<typeof SuppressionStateSchema>;
22
+ //# sourceMappingURL=contact-suppressions.contract.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contact-suppressions.contract.d.ts","sourceRoot":"","sources":["../../contracts/shared/contact-suppressions.contract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;GAQtB,CAAC;AAEd,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SuppressionStateSchema = void 0;
4
+ const zod_1 = require("zod");
5
+ exports.SuppressionStateSchema = zod_1.z
6
+ .object({
7
+ reason: zod_1.z.string(),
8
+ note: zod_1.z.string().nullable(),
9
+ until: zod_1.z.string().datetime().nullable(),
10
+ setByName: zod_1.z.string(),
11
+ setAt: zod_1.z.string().datetime(),
12
+ })
13
+ .nullable();
@@ -0,0 +1,57 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * A live (current or upcoming, non-inactive-status) booking attached to a
4
+ * worker's identity — the worker itself, any sibling worker sharing its
5
+ * curated_worker_id, or the booking's own curated_worker_id denorm. Used to
6
+ * tag rows as "Booked by <agent>" instead of hiding them. When several live
7
+ * bookings exist, the one ending last is surfaced (endDate DESC NULLS FIRST).
8
+ */
9
+ export declare const LiveBookingSummarySchema: z.ZodObject<{
10
+ bookingId: z.ZodString;
11
+ /** ISO date; null when the source column is null. */
12
+ startDate: z.ZodNullable<z.ZodString>;
13
+ /** ISO date; null = open-ended. */
14
+ endDate: z.ZodNullable<z.ZodString>;
15
+ /** BookingType as text (kept as string to avoid a contracts import cycle). */
16
+ statusType: z.ZodString;
17
+ /** True when an ACTIVE actives row exists for this booking today (on site). */
18
+ isActive: z.ZodBoolean;
19
+ /** Agent who created the booking; null if the user row is gone. */
20
+ bookedBy: z.ZodNullable<z.ZodObject<{
21
+ id: z.ZodString;
22
+ firstName: z.ZodString;
23
+ lastName: z.ZodString;
24
+ }, "strip", z.ZodTypeAny, {
25
+ id: string;
26
+ lastName: string;
27
+ firstName: string;
28
+ }, {
29
+ id: string;
30
+ lastName: string;
31
+ firstName: string;
32
+ }>>;
33
+ }, "strip", z.ZodTypeAny, {
34
+ startDate: string | null;
35
+ endDate: string | null;
36
+ bookingId: string;
37
+ statusType: string;
38
+ isActive: boolean;
39
+ bookedBy: {
40
+ id: string;
41
+ lastName: string;
42
+ firstName: string;
43
+ } | null;
44
+ }, {
45
+ startDate: string | null;
46
+ endDate: string | null;
47
+ bookingId: string;
48
+ statusType: string;
49
+ isActive: boolean;
50
+ bookedBy: {
51
+ id: string;
52
+ lastName: string;
53
+ firstName: string;
54
+ } | null;
55
+ }>;
56
+ export type LiveBookingSummary = z.infer<typeof LiveBookingSummarySchema>;
57
+ //# sourceMappingURL=live-booking.schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"live-booking.schema.d.ts","sourceRoot":"","sources":["../../contracts/shared/live-booking.schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB;;;;;;GAMG;AACH,eAAO,MAAM,wBAAwB;;IAGjC,qDAAqD;;IAErD,mCAAmC;;IAEnC,8EAA8E;;IAE9E,+EAA+E;;IAE/E,mEAAmE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAS5B,CAAC;AAC5C,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC"}
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LiveBookingSummarySchema = void 0;
4
+ const zod_openapi_1 = require("@anatine/zod-openapi");
5
+ const zod_1 = require("zod");
6
+ (0, zod_openapi_1.extendZodWithOpenApi)(zod_1.z);
7
+ /**
8
+ * A live (current or upcoming, non-inactive-status) booking attached to a
9
+ * worker's identity — the worker itself, any sibling worker sharing its
10
+ * curated_worker_id, or the booking's own curated_worker_id denorm. Used to
11
+ * tag rows as "Booked by <agent>" instead of hiding them. When several live
12
+ * bookings exist, the one ending last is surfaced (endDate DESC NULLS FIRST).
13
+ */
14
+ exports.LiveBookingSummarySchema = zod_1.z
15
+ .object({
16
+ bookingId: zod_1.z.string().uuid(),
17
+ /** ISO date; null when the source column is null. */
18
+ startDate: zod_1.z.string().nullable(),
19
+ /** ISO date; null = open-ended. */
20
+ endDate: zod_1.z.string().nullable(),
21
+ /** BookingType as text (kept as string to avoid a contracts import cycle). */
22
+ statusType: zod_1.z.string(),
23
+ /** True when an ACTIVE actives row exists for this booking today (on site). */
24
+ isActive: zod_1.z.boolean(),
25
+ /** Agent who created the booking; null if the user row is gone. */
26
+ bookedBy: zod_1.z
27
+ .object({
28
+ id: zod_1.z.string().uuid(),
29
+ firstName: zod_1.z.string(),
30
+ lastName: zod_1.z.string(),
31
+ })
32
+ .nullable(),
33
+ })
34
+ .openapi({ title: 'LiveBookingSummary' });
@@ -0,0 +1,218 @@
1
+ import { z } from 'zod';
2
+ export declare const ClientSummarySchema: z.ZodObject<{
3
+ id: z.ZodString;
4
+ name: z.ZodString;
5
+ }, "strip", z.ZodTypeAny, {
6
+ id: string;
7
+ name: string;
8
+ }, {
9
+ id: string;
10
+ name: string;
11
+ }>;
12
+ export declare const CompanySummarySchema: z.ZodObject<{
13
+ id: z.ZodString;
14
+ name: z.ZodString;
15
+ }, "strip", z.ZodTypeAny, {
16
+ id: string;
17
+ name: string;
18
+ }, {
19
+ id: string;
20
+ name: string;
21
+ }>;
22
+ export declare const UserSummarySchema: z.ZodObject<{
23
+ id: z.ZodString;
24
+ firstName: z.ZodString;
25
+ lastName: z.ZodString;
26
+ phoneNumbers: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodObject<{
27
+ id: z.ZodString;
28
+ phoneNumber: z.ZodString;
29
+ description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
30
+ isPrimary: z.ZodDefault<z.ZodBoolean>;
31
+ }, "strip", z.ZodTypeAny, {
32
+ id: string;
33
+ phoneNumber: string;
34
+ isPrimary: boolean;
35
+ description?: string | null | undefined;
36
+ }, {
37
+ id: string;
38
+ phoneNumber: string;
39
+ description?: string | null | undefined;
40
+ isPrimary?: boolean | undefined;
41
+ }>, "many">>>;
42
+ deletedAt: z.ZodOptional<z.ZodNullable<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodDate, z.ZodNull]>, string | null, string | Date | null>>>;
43
+ }, "strip", z.ZodTypeAny, {
44
+ id: string;
45
+ firstName: string;
46
+ lastName: string;
47
+ phoneNumbers: {
48
+ id: string;
49
+ phoneNumber: string;
50
+ isPrimary: boolean;
51
+ description?: string | null | undefined;
52
+ }[];
53
+ deletedAt?: string | null | undefined;
54
+ }, {
55
+ id: string;
56
+ firstName: string;
57
+ lastName: string;
58
+ phoneNumbers?: {
59
+ id: string;
60
+ phoneNumber: string;
61
+ description?: string | null | undefined;
62
+ isPrimary?: boolean | undefined;
63
+ }[] | undefined;
64
+ deletedAt?: string | Date | null | undefined;
65
+ }>;
66
+ export declare const WorkerSummarySchema: z.ZodObject<{
67
+ id: z.ZodString;
68
+ firstName: z.ZodString;
69
+ lastName: z.ZodNullable<z.ZodOptional<z.ZodString>>;
70
+ }, "strip", z.ZodTypeAny, {
71
+ id: string;
72
+ firstName: string;
73
+ lastName?: string | null | undefined;
74
+ }, {
75
+ id: string;
76
+ firstName: string;
77
+ lastName?: string | null | undefined;
78
+ }>;
79
+ export declare const LocationSummarySchema: z.ZodObject<{
80
+ postcode: z.ZodNullable<z.ZodOptional<z.ZodString>>;
81
+ postTown: z.ZodNullable<z.ZodOptional<z.ZodString>>;
82
+ adminDistrict: z.ZodNullable<z.ZodOptional<z.ZodString>>;
83
+ address: z.ZodNullable<z.ZodOptional<z.ZodString>>;
84
+ }, "strip", z.ZodTypeAny, {
85
+ postcode?: string | null | undefined;
86
+ postTown?: string | null | undefined;
87
+ adminDistrict?: string | null | undefined;
88
+ address?: string | null | undefined;
89
+ }, {
90
+ postcode?: string | null | undefined;
91
+ postTown?: string | null | undefined;
92
+ adminDistrict?: string | null | undefined;
93
+ address?: string | null | undefined;
94
+ }>;
95
+ export declare const CollaborationSummarySchema: z.ZodObject<{
96
+ id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
97
+ status: z.ZodOptional<z.ZodNullable<z.ZodString>>;
98
+ userId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
99
+ client: z.ZodOptional<z.ZodNullable<z.ZodObject<{
100
+ id: z.ZodString;
101
+ name: z.ZodString;
102
+ }, "strip", z.ZodTypeAny, {
103
+ id: string;
104
+ name: string;
105
+ }, {
106
+ id: string;
107
+ name: string;
108
+ }>>>;
109
+ company: z.ZodOptional<z.ZodNullable<z.ZodObject<{
110
+ id: z.ZodString;
111
+ name: z.ZodString;
112
+ }, "strip", z.ZodTypeAny, {
113
+ id: string;
114
+ name: string;
115
+ }, {
116
+ id: string;
117
+ name: string;
118
+ }>>>;
119
+ user: z.ZodOptional<z.ZodNullable<z.ZodObject<{
120
+ id: z.ZodString;
121
+ firstName: z.ZodString;
122
+ lastName: z.ZodString;
123
+ phoneNumbers: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodObject<{
124
+ id: z.ZodString;
125
+ phoneNumber: z.ZodString;
126
+ description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
127
+ isPrimary: z.ZodDefault<z.ZodBoolean>;
128
+ }, "strip", z.ZodTypeAny, {
129
+ id: string;
130
+ phoneNumber: string;
131
+ isPrimary: boolean;
132
+ description?: string | null | undefined;
133
+ }, {
134
+ id: string;
135
+ phoneNumber: string;
136
+ description?: string | null | undefined;
137
+ isPrimary?: boolean | undefined;
138
+ }>, "many">>>;
139
+ deletedAt: z.ZodOptional<z.ZodNullable<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodDate, z.ZodNull]>, string | null, string | Date | null>>>;
140
+ }, "strip", z.ZodTypeAny, {
141
+ id: string;
142
+ firstName: string;
143
+ lastName: string;
144
+ phoneNumbers: {
145
+ id: string;
146
+ phoneNumber: string;
147
+ isPrimary: boolean;
148
+ description?: string | null | undefined;
149
+ }[];
150
+ deletedAt?: string | null | undefined;
151
+ }, {
152
+ id: string;
153
+ firstName: string;
154
+ lastName: string;
155
+ phoneNumbers?: {
156
+ id: string;
157
+ phoneNumber: string;
158
+ description?: string | null | undefined;
159
+ isPrimary?: boolean | undefined;
160
+ }[] | undefined;
161
+ deletedAt?: string | Date | null | undefined;
162
+ }>>>;
163
+ }, "strip", z.ZodTypeAny, {
164
+ id?: string | null | undefined;
165
+ status?: string | null | undefined;
166
+ userId?: string | null | undefined;
167
+ client?: {
168
+ id: string;
169
+ name: string;
170
+ } | null | undefined;
171
+ company?: {
172
+ id: string;
173
+ name: string;
174
+ } | null | undefined;
175
+ user?: {
176
+ id: string;
177
+ firstName: string;
178
+ lastName: string;
179
+ phoneNumbers: {
180
+ id: string;
181
+ phoneNumber: string;
182
+ isPrimary: boolean;
183
+ description?: string | null | undefined;
184
+ }[];
185
+ deletedAt?: string | null | undefined;
186
+ } | null | undefined;
187
+ }, {
188
+ id?: string | null | undefined;
189
+ status?: string | null | undefined;
190
+ userId?: string | null | undefined;
191
+ client?: {
192
+ id: string;
193
+ name: string;
194
+ } | null | undefined;
195
+ company?: {
196
+ id: string;
197
+ name: string;
198
+ } | null | undefined;
199
+ user?: {
200
+ id: string;
201
+ firstName: string;
202
+ lastName: string;
203
+ phoneNumbers?: {
204
+ id: string;
205
+ phoneNumber: string;
206
+ description?: string | null | undefined;
207
+ isPrimary?: boolean | undefined;
208
+ }[] | undefined;
209
+ deletedAt?: string | Date | null | undefined;
210
+ } | null | undefined;
211
+ }>;
212
+ export type ClientSummary = z.infer<typeof ClientSummarySchema>;
213
+ export type CompanySummary = z.infer<typeof CompanySummarySchema>;
214
+ export type UserSummary = z.infer<typeof UserSummarySchema>;
215
+ export type WorkerSummary = z.infer<typeof WorkerSummarySchema>;
216
+ export type LocationSummary = z.infer<typeof LocationSummarySchema>;
217
+ export type CollaborationSummary = z.infer<typeof CollaborationSummarySchema>;
218
+ //# sourceMappingURL=summary-schemas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"summary-schemas.d.ts","sourceRoot":"","sources":["../../contracts/shared/summary-schemas.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAWxB,eAAO,MAAM,mBAAmB;;;;;;;;;EAG9B,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;;;;;;;EAG/B,CAAC;AAEH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAe5B,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;EAI9B,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;EAKhC,CAAC;AAIH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAOrC,CAAC;AAGH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAChE,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAClE,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC5D,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAChE,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AACpE,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC"}
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CollaborationSummarySchema = exports.LocationSummarySchema = exports.WorkerSummarySchema = exports.UserSummarySchema = exports.CompanySummarySchema = exports.ClientSummarySchema = void 0;
4
+ const zod_openapi_1 = require("@anatine/zod-openapi");
5
+ const zod_1 = require("zod");
6
+ const common_schemas_1 = require("../common/common-schemas");
7
+ (0, zod_openapi_1.extendZodWithOpenApi)(zod_1.z);
8
+ // --- Atomic Summary Schemas ---
9
+ // NOTE: These schemas deliberately omit .openapi({ title }) because they are
10
+ // reused across multiple contracts with different nullable/optional wrapping.
11
+ // Adding a title causes @ts-rest/open-api to crash when the same title maps
12
+ // to different JSON Schema shapes due to wrapping differences.
13
+ exports.ClientSummarySchema = zod_1.z.object({
14
+ id: zod_1.z.string().uuid().describe('Client ID'),
15
+ name: zod_1.z.string().describe('Client Name'),
16
+ });
17
+ exports.CompanySummarySchema = zod_1.z.object({
18
+ id: zod_1.z.string().uuid().describe('Company ID'),
19
+ name: zod_1.z.string().describe('Company Name'),
20
+ });
21
+ exports.UserSummarySchema = zod_1.z.object({
22
+ id: zod_1.z.string().uuid().describe('User ID'),
23
+ firstName: zod_1.z.string().describe('First Name'),
24
+ lastName: zod_1.z.string().describe('Last Name'),
25
+ phoneNumbers: zod_1.z
26
+ .array(common_schemas_1.PhoneNumberResponseSchema)
27
+ .optional()
28
+ .default([])
29
+ .describe('Phone Numbers'),
30
+ deletedAt: zod_1.z
31
+ .union([zod_1.z.string().datetime(), zod_1.z.date(), zod_1.z.null()])
32
+ .transform((val) => (val instanceof Date ? val.toISOString() : val))
33
+ .nullable()
34
+ .optional()
35
+ .describe('Soft-delete timestamp; non-null means user is deactivated'),
36
+ });
37
+ exports.WorkerSummarySchema = zod_1.z.object({
38
+ id: zod_1.z.string().uuid().describe('Worker ID'),
39
+ firstName: zod_1.z.string().describe('First Name'),
40
+ lastName: zod_1.z.string().optional().nullable().describe('Last Name'),
41
+ });
42
+ exports.LocationSummarySchema = zod_1.z.object({
43
+ postcode: zod_1.z.string().optional().nullable().describe('Postcode'),
44
+ postTown: zod_1.z.string().optional().nullable().describe('Post Town'),
45
+ adminDistrict: zod_1.z.string().optional().nullable().describe('Admin District'),
46
+ address: zod_1.z.string().optional().nullable().describe('Address'),
47
+ });
48
+ // --- Composite Summary Schemas ---
49
+ exports.CollaborationSummarySchema = zod_1.z.object({
50
+ id: zod_1.z.string().uuid().nullable().optional().describe('Collaboration ID'),
51
+ status: zod_1.z.string().nullable().optional().describe('Collaboration Status'),
52
+ userId: zod_1.z.string().uuid().nullable().optional().describe('FA Agent User ID'),
53
+ client: exports.ClientSummarySchema.nullable().optional().describe('Client'),
54
+ company: exports.CompanySummarySchema.nullable().optional().describe('Company'),
55
+ user: exports.UserSummarySchema.nullable().optional().describe('FA Agent'),
56
+ });
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=sheets-sync-events.schemas.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sheets-sync-events.schemas.test.d.ts","sourceRoot":"","sources":["../../../contracts/sheets-sync/__tests__/sheets-sync-events.schemas.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const node_assert_1 = __importDefault(require("node:assert"));
7
+ const sheets_sync_events_schemas_1 = require("../sheets-sync-events.schemas");
8
+ node_assert_1.default.equal(sheets_sync_events_schemas_1.SheetsSyncEventType.CHECK_YELLOW_COMPLETED, 'check-yellow:completed');
9
+ node_assert_1.default.ok(sheets_sync_events_schemas_1.CheckYellowStartedSchema.safeParse({}).success);
10
+ node_assert_1.default.ok(sheets_sync_events_schemas_1.CheckYellowCompletedSchema.safeParse({
11
+ lastSyncedAt: '2026-05-21T10:00:00.000Z',
12
+ lastRowCount: 250,
13
+ }).success);
14
+ node_assert_1.default.equal(sheets_sync_events_schemas_1.CheckYellowCompletedSchema.safeParse({ lastSyncedAt: '...', lastRowCount: -1 }).success, false);
15
+ node_assert_1.default.ok(sheets_sync_events_schemas_1.CheckYellowFailedSchema.safeParse({
16
+ lastError: 'boom',
17
+ lastErrorAt: '2026-05-21T11:00:00.000Z',
18
+ }).success);
19
+ node_assert_1.default.ok(sheets_sync_events_schemas_1.CheckYellowCompletedSchema.safeParse({ lastSyncedAt: null, lastRowCount: 0 }).success);
20
+ console.log('sheets-sync-events schemas OK');
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=tab-sync-config.schema.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tab-sync-config.schema.test.d.ts","sourceRoot":"","sources":["../../../contracts/sheets-sync/__tests__/tab-sync-config.schema.test.ts"],"names":[],"mappings":""}