@dakkitor/api-contracts 1.8.0 → 1.9.2

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 (139) hide show
  1. package/dist/abilities/abilities.contract.d.ts +28 -1
  2. package/dist/abilities/abilities.contract.d.ts.map +1 -1
  3. package/dist/abilities/abilities.contract.js +32 -1
  4. package/dist/abilities/abilities.contract.spec.js +63 -3
  5. package/dist/abilities/admin-dashboard.abilities.test.js +1 -0
  6. package/dist/abilities/automatic-caller.abilities.json +1 -0
  7. package/dist/abilities/first-agent.abilities.json +14 -0
  8. package/dist/abilities/interconnection.abilities.json +17 -1
  9. package/dist/abilities/office-manager.abilities.json +4 -0
  10. package/dist/abilities/second-agent.abilities.json +48 -1
  11. package/dist/abilities/worker-curator.abilities.json +17 -1
  12. package/dist/actives/actives.contract.d.ts +6959 -6547
  13. package/dist/actives/actives.contract.d.ts.map +1 -1
  14. package/dist/agent-client-links/agent-client-links.contract.d.ts +1275 -1173
  15. package/dist/agent-client-links/agent-client-links.contract.d.ts.map +1 -1
  16. package/dist/auth/auth.contract.d.ts +102 -102
  17. package/dist/bookings/backdate-guard.spec.js +24 -32
  18. package/dist/bookings/bookings.contract.d.ts +9963 -9305
  19. package/dist/bookings/bookings.contract.d.ts.map +1 -1
  20. package/dist/bookings/bookings.contract.js +2 -16
  21. package/dist/call-history/call-history.contract.d.ts +1040 -828
  22. package/dist/call-history/call-history.contract.d.ts.map +1 -1
  23. package/dist/calls-feed/calls-feed.contract.d.ts +138 -98
  24. package/dist/calls-feed/calls-feed.contract.d.ts.map +1 -1
  25. package/dist/candidate-calling/candidate-calling.contract.d.ts +18372 -0
  26. package/dist/candidate-calling/candidate-calling.contract.d.ts.map +1 -0
  27. package/dist/candidate-calling/candidate-calling.contract.js +494 -0
  28. package/dist/candidate-calling/candidate-calling.contract.spec.d.ts +2 -0
  29. package/dist/candidate-calling/candidate-calling.contract.spec.d.ts.map +1 -0
  30. package/dist/candidate-calling/candidate-calling.contract.spec.js +357 -0
  31. package/dist/candidate-calling/candidate-dialpad-call.schemas.d.ts +10 -0
  32. package/dist/candidate-calling/candidate-dialpad-call.schemas.d.ts.map +1 -0
  33. package/dist/candidate-calling/candidate-dialpad-call.schemas.js +33 -0
  34. package/dist/client-contacts/client-contacts.contract.d.ts +622 -622
  35. package/dist/clients/clients.contract.d.ts +289 -289
  36. package/dist/collaboration-checkings/collaboration-checkings.contract.d.ts +3108 -3004
  37. package/dist/collaboration-checkings/collaboration-checkings.contract.d.ts.map +1 -1
  38. package/dist/collaborations/collaborations.contract.d.ts +2604 -2507
  39. package/dist/collaborations/collaborations.contract.d.ts.map +1 -1
  40. package/dist/common/callback-slots.d.ts +4 -0
  41. package/dist/common/callback-slots.d.ts.map +1 -0
  42. package/dist/common/callback-slots.js +20 -0
  43. package/dist/common/common-schemas.d.ts +10 -4
  44. package/dist/common/common-schemas.d.ts.map +1 -1
  45. package/dist/common/common-schemas.js +6 -0
  46. package/dist/companies/companies.contract.d.ts +120 -120
  47. package/dist/crews/crews.contract.d.ts +278 -278
  48. package/dist/cron-executions/cron-executions.contract.d.ts +245 -245
  49. package/dist/cron-executions/cron-executions.contract.d.ts.map +1 -1
  50. package/dist/cron-executions/cron-executions.contract.js +1 -0
  51. package/dist/curated-worker-leads/candidate-coordination.contract.d.ts +3830 -2354
  52. package/dist/curated-worker-leads/candidate-coordination.contract.d.ts.map +1 -1
  53. package/dist/curated-worker-leads/candidate-coordination.contract.js +73 -7
  54. package/dist/curated-worker-leads/candidate-edit-session.contract.d.ts +94 -94
  55. package/dist/curated-worker-leads/contact-history.spec.js +141 -0
  56. package/dist/curated-worker-leads/job-candidate-cards.spec.js +19 -0
  57. package/dist/curated-worker-leads/job-candidates.spec.js +179 -0
  58. package/dist/curated-worker-leads/jobs-tab.contract.d.ts +8185 -2106
  59. package/dist/curated-worker-leads/jobs-tab.contract.d.ts.map +1 -1
  60. package/dist/curated-worker-leads/jobs-tab.contract.js +126 -1
  61. package/dist/curated-worker-leads/owned-jobs-tab.contract.d.ts +110 -110
  62. package/dist/curated-workers/curated-workers.contract.d.ts +2033 -1951
  63. package/dist/curated-workers/curated-workers.contract.d.ts.map +1 -1
  64. package/dist/dashboards/dashboard-widgets.contact-history.spec.d.ts +2 -0
  65. package/dist/dashboards/dashboard-widgets.contact-history.spec.d.ts.map +1 -0
  66. package/dist/dashboards/dashboard-widgets.contact-history.spec.js +160 -0
  67. package/dist/dashboards/dashboard-widgets.contract.d.ts +1027 -284
  68. package/dist/dashboards/dashboard-widgets.contract.d.ts.map +1 -1
  69. package/dist/dashboards/dashboard-widgets.contract.js +46 -1
  70. package/dist/dashboards/dashboard.contract.d.ts +8 -8
  71. package/dist/document-intake/document-intake.contract.d.ts +1145 -1145
  72. package/dist/export-jobs/export-jobs.contract.d.ts +755 -755
  73. package/dist/exports-events/exports-events.schemas.d.ts +6 -6
  74. package/dist/index.d.ts +5 -0
  75. package/dist/index.d.ts.map +1 -1
  76. package/dist/index.js +5 -0
  77. package/dist/jobs/jobs.contract.d.ts +8507 -6044
  78. package/dist/jobs/jobs.contract.d.ts.map +1 -1
  79. package/dist/jobs/jobs.contract.js +95 -2
  80. package/dist/jobs/jobs.contract.spec.js +231 -1
  81. package/dist/kpi-impersonation/kpi-impersonation.contract.d.ts +102 -102
  82. package/dist/lead-assignments/lead-assignments.contract.d.ts +2985 -1139
  83. package/dist/lead-assignments/lead-assignments.contract.d.ts.map +1 -1
  84. package/dist/lead-assignments/lead-assignments.contract.js +102 -2
  85. package/dist/lead-assignments/lead-assignments.contract.spec.d.ts +2 -0
  86. package/dist/lead-assignments/lead-assignments.contract.spec.d.ts.map +1 -0
  87. package/dist/lead-assignments/lead-assignments.contract.spec.js +51 -0
  88. package/dist/lead-distribution/agent-lead-distribution.contract.d.ts +341 -317
  89. package/dist/lead-distribution/agent-lead-distribution.contract.d.ts.map +1 -1
  90. package/dist/leads/leads.contract.d.ts +282 -282
  91. package/dist/locations/location-enrichment.contract.spec.d.ts +2 -0
  92. package/dist/locations/location-enrichment.contract.spec.d.ts.map +1 -0
  93. package/dist/locations/location-enrichment.contract.spec.js +50 -0
  94. package/dist/locations/locations.contract.d.ts +132 -98
  95. package/dist/locations/locations.contract.d.ts.map +1 -1
  96. package/dist/locations/locations.contract.js +10 -0
  97. package/dist/notifications/notifications.contract.d.ts +579 -107
  98. package/dist/notifications/notifications.contract.d.ts.map +1 -1
  99. package/dist/notifications/notifications.contract.js +36 -2
  100. package/dist/notifications/notifications.contract.spec.d.ts +2 -0
  101. package/dist/notifications/notifications.contract.spec.d.ts.map +1 -0
  102. package/dist/notifications/notifications.contract.spec.js +39 -0
  103. package/dist/outreach/__tests__/outreach-claim.test.js +33 -0
  104. package/dist/outreach/__tests__/outreach-routes.test.js +8 -0
  105. package/dist/outreach/outreach.contract.d.ts +583 -162
  106. package/dist/outreach/outreach.contract.d.ts.map +1 -1
  107. package/dist/outreach/outreach.contract.js +50 -1
  108. package/dist/outreach/relay-hub-outreach.contract.d.ts +299 -121
  109. package/dist/outreach/relay-hub-outreach.contract.d.ts.map +1 -1
  110. package/dist/outreach/relay-hub-outreach.contract.js +10 -0
  111. package/dist/outreach/relay-hub-outreach.contract.spec.js +26 -0
  112. package/dist/outreach/relay-hub-outreach.schemas.d.ts +94 -0
  113. package/dist/outreach/relay-hub-outreach.schemas.d.ts.map +1 -0
  114. package/dist/outreach/relay-hub-outreach.schemas.js +15 -0
  115. package/dist/own-research/check-phone-response.spec.d.ts +2 -0
  116. package/dist/own-research/check-phone-response.spec.d.ts.map +1 -0
  117. package/dist/own-research/check-phone-response.spec.js +54 -0
  118. package/dist/own-research/own-research.contract.d.ts +971 -820
  119. package/dist/own-research/own-research.contract.d.ts.map +1 -1
  120. package/dist/own-research/own-research.contract.js +6 -1
  121. package/dist/proofs/proofs.contract.d.ts +356 -356
  122. package/dist/proofs/proofs.dtos.d.ts +148 -148
  123. package/dist/realtime/job-call-priority-updated.d.ts +18 -0
  124. package/dist/realtime/job-call-priority-updated.d.ts.map +1 -0
  125. package/dist/realtime/job-call-priority-updated.js +17 -0
  126. package/dist/shared/summary-schemas.d.ts +36 -27
  127. package/dist/shared/summary-schemas.d.ts.map +1 -1
  128. package/dist/shared/summary-schemas.js +7 -0
  129. package/dist/sheets-sync/sheets-sync.contract.d.ts +683 -683
  130. package/dist/user-access-grants/user-access-grants.contract.d.ts +216 -216
  131. package/dist/users/users.contract.d.ts +365 -336
  132. package/dist/users/users.contract.d.ts.map +1 -1
  133. package/dist/users/users.contract.js +9 -1
  134. package/dist/users/users.contract.spec.js +39 -0
  135. package/dist/worker-source-identity-conflicts/worker-source-identity-conflicts.contract.d.ts +150 -150
  136. package/dist/workers/workers.contract.d.ts +4505 -4261
  137. package/dist/workers/workers.contract.d.ts.map +1 -1
  138. package/dist/workers/workers.contract.js +12 -0
  139. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"lead-assignments.contract.d.ts","sourceRoot":"","sources":["../../contracts/lead-assignments/lead-assignments.contract.ts"],"names":[],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkFnC,CAAC"}
1
+ {"version":3,"file":"lead-assignments.contract.d.ts","sourceRoot":"","sources":["../../contracts/lead-assignments/lead-assignments.contract.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACL,mBAAmB,EAEpB,MAAM,0BAA0B,CAAC;AAWlC,oBAAY,oBAAoB;IAC9B,MAAM,WAAW;IACjB,SAAS,cAAc;IACvB,SAAS,cAAc;CACxB;AAED,eAAO,MAAM,0BAA0B,8CAKnC,CAAC;AAGL,eAAO,MAAM,wBAAwB;;;;;;;;;EAGnC,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgD/B,CAAC;AAEH,eAAO,MAAM,sBAAsB,kCAEmB,CAAC;AAEvD;;;;GAIG;AACH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;EAiBM,CAAC;AAE5C,iFAAiF;AACjF,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;EAWxC,CAAC;AAEF,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EASM,CAAC;AAEpD,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EASM,CAAC;AAElD,eAAO,MAAM,sBAAsB;;;;;;;;;EAKM,CAAC;AAE1C,eAAO,MAAM,wBAAwB;;;;;;;;;EAKM,CAAC;AAE5C;;;;;;;;;;GAUG;AACH,eAAO,MAAM,2BAA2B,gEAKtC,CAAC;AAEH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;EAYM,CAAC;AAGrC,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAC1E,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAClE,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAC1E,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAC9C,OAAO,gCAAgC,CACxC,CAAC;AACF,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAC5C,OAAO,8BAA8B,CACtC,CAAC;AACF,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AACtE,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAC1E,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC5D,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAChF,OAAO,EAAE,mBAAmB,EAAE,CAAC;AAC/B,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqInC,CAAC"}
@@ -1,9 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.leadAssignmentsContract = exports.QueueStatusSchema = exports.AgentEnrollmentStatusSchema = exports.CancelAssignmentResponseSchema = exports.CompleteAssignmentResponseSchema = exports.CompleteAssignmentSchema = exports.LeadAssignmentSchema = exports.LeadAssignmentLeadSchema = exports.LeadAssignmentStatusSchema = exports.LeadAssignmentStatus = void 0;
3
+ exports.leadAssignmentsContract = exports.CALLBACK_TIME_SLOTS = exports.QueueStatusSchema = exports.AgentEnrollmentStatusSchema = exports.RescheduleCallbackSchema = exports.CompleteCallbackSchema = exports.CancelAssignmentResponseSchema = exports.CompleteAssignmentResponseSchema = exports.CompleteAssignmentBodySchema = exports.CompleteAssignmentSchema = exports.CallbackTimeSlotSchema = exports.LeadAssignmentSchema = exports.LeadAssignmentLeadSchema = exports.LeadAssignmentStatusSchema = exports.LeadAssignmentStatus = 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");
7
+ const callback_slots_1 = require("../common/callback-slots");
8
+ Object.defineProperty(exports, "CALLBACK_TIME_SLOTS", { enumerable: true, get: function () { return callback_slots_1.CALLBACK_TIME_SLOTS; } });
7
9
  const call_rating_schema_1 = require("../common/call-rating.schema");
8
10
  const error_schemas_1 = require("../common/error-schemas");
9
11
  const companies_contract_1 = require("../companies/companies.contract");
@@ -67,7 +69,24 @@ exports.LeadAssignmentSchema = zod_1.z.object({
67
69
  .union([zod_1.z.string().datetime(), zod_1.z.date()])
68
70
  .transform((val) => (val instanceof Date ? val.toISOString() : val))
69
71
  .describe('The timestamp when the assignment was last updated'),
72
+ callback: zod_1.z
73
+ .object({
74
+ id: zod_1.z.string().uuid(),
75
+ dueAt: zod_1.z.string(),
76
+ originNotes: zod_1.z.string().nullable(),
77
+ })
78
+ .nullable()
79
+ .optional()
80
+ .describe('Set when this assignment exists because the lead asked for a callback'),
70
81
  });
82
+ exports.CallbackTimeSlotSchema = zod_1.z
83
+ .enum(callback_slots_1.CALLBACK_TIME_SLOTS_TUPLE)
84
+ .describe('Quarter-hour callback slot, 08:00–18:00');
85
+ /**
86
+ * Plain ZodObject — the web form generator reads `.shape` off this, so it must
87
+ * NOT be wrapped in `.superRefine` (that yields a ZodEffects with no `.shape`).
88
+ * The both-or-neither rule lives on CompleteAssignmentBodySchema below.
89
+ */
71
90
  exports.CompleteAssignmentSchema = zod_1.z
72
91
  .object({
73
92
  rating: call_rating_schema_1.CallRatingSchema.describe('The rating given to the call outcome'),
@@ -76,8 +95,26 @@ exports.CompleteAssignmentSchema = zod_1.z
76
95
  .max(1000)
77
96
  .optional()
78
97
  .describe('Optional notes about the assignment outcome'),
98
+ callbackDate: zod_1.z
99
+ .string()
100
+ .date()
101
+ .optional()
102
+ .describe('Date the client asked to be called back (YYYY-MM-DD)'),
103
+ callbackTime: exports.CallbackTimeSlotSchema.optional().describe('Slot the client asked to be called back'),
79
104
  })
80
105
  .openapi({ title: 'CompleteAssignment' });
106
+ /** Wire schema: adds the both-or-neither rule. Use this as the contract body. */
107
+ exports.CompleteAssignmentBodySchema = exports.CompleteAssignmentSchema.superRefine((value, ctx) => {
108
+ const hasDate = value.callbackDate !== undefined;
109
+ const hasTime = value.callbackTime !== undefined;
110
+ if (hasDate === hasTime)
111
+ return;
112
+ ctx.addIssue({
113
+ code: zod_1.z.ZodIssueCode.custom,
114
+ path: [hasDate ? 'callbackTime' : 'callbackDate'],
115
+ message: 'Pick both a callback date and a time, or neither',
116
+ });
117
+ });
81
118
  exports.CompleteAssignmentResponseSchema = zod_1.z
82
119
  .object({
83
120
  completed: exports.LeadAssignmentSchema.describe('The assignment that was just completed'),
@@ -90,6 +127,18 @@ exports.CancelAssignmentResponseSchema = zod_1.z
90
127
  next: exports.LeadAssignmentSchema.nullable().describe('The next available assignment for the agent'),
91
128
  })
92
129
  .openapi({ title: 'CancelAssignmentResponse' });
130
+ exports.CompleteCallbackSchema = zod_1.z
131
+ .object({
132
+ rating: call_rating_schema_1.CallRatingSchema.describe('The rating given to the follow-up call'),
133
+ notes: zod_1.z.string().max(1000).optional(),
134
+ })
135
+ .openapi({ title: 'CompleteCallback' });
136
+ exports.RescheduleCallbackSchema = zod_1.z
137
+ .object({
138
+ callbackDate: zod_1.z.string().date(),
139
+ callbackTime: exports.CallbackTimeSlotSchema,
140
+ })
141
+ .openapi({ title: 'RescheduleCallback' });
93
142
  /**
94
143
  * Why an agent's lead queue is in its current state.
95
144
  *
@@ -125,7 +174,7 @@ exports.leadAssignmentsContract = c.router({
125
174
  pathParams: zod_1.z.object({
126
175
  id: zod_1.z.string().uuid().describe('Assignment ID'),
127
176
  }),
128
- body: exports.CompleteAssignmentSchema,
177
+ body: exports.CompleteAssignmentBodySchema,
129
178
  responses: {
130
179
  200: exports.CompleteAssignmentResponseSchema.nullable(),
131
180
  404: error_schemas_1.ErrorResponseSchema,
@@ -188,6 +237,57 @@ exports.leadAssignmentsContract = c.router({
188
237
  tags: ['Lead Assignments'],
189
238
  },
190
239
  },
240
+ completeCallback: {
241
+ method: 'POST',
242
+ path: '/lead-callbacks/:id/complete',
243
+ pathParams: zod_1.z.object({
244
+ id: zod_1.z.string().uuid().describe('Callback ID'),
245
+ }),
246
+ body: exports.CompleteCallbackSchema,
247
+ responses: {
248
+ 200: exports.LeadAssignmentSchema.nullable(),
249
+ 403: error_schemas_1.ErrorResponseSchema,
250
+ 404: error_schemas_1.ErrorResponseSchema,
251
+ },
252
+ summary: 'Complete a scheduled callback and log the call',
253
+ metadata: {
254
+ tags: ['Lead Assignments'],
255
+ },
256
+ },
257
+ rescheduleCallback: {
258
+ method: 'POST',
259
+ path: '/lead-callbacks/:id/reschedule',
260
+ pathParams: zod_1.z.object({
261
+ id: zod_1.z.string().uuid().describe('Callback ID'),
262
+ }),
263
+ body: exports.RescheduleCallbackSchema,
264
+ responses: {
265
+ 200: exports.LeadAssignmentSchema.nullable(),
266
+ 403: error_schemas_1.ErrorResponseSchema,
267
+ 404: error_schemas_1.ErrorResponseSchema,
268
+ },
269
+ summary: 'Reschedule a callback to a new date and time',
270
+ metadata: {
271
+ tags: ['Lead Assignments'],
272
+ },
273
+ },
274
+ cancelCallback: {
275
+ method: 'POST',
276
+ path: '/lead-callbacks/:id/cancel',
277
+ pathParams: zod_1.z.object({
278
+ id: zod_1.z.string().uuid().describe('Callback ID'),
279
+ }),
280
+ body: zod_1.z.object({}),
281
+ responses: {
282
+ 200: exports.LeadAssignmentSchema.nullable(),
283
+ 403: error_schemas_1.ErrorResponseSchema,
284
+ 404: error_schemas_1.ErrorResponseSchema,
285
+ },
286
+ summary: 'Cancel a scheduled callback and release the hold',
287
+ metadata: {
288
+ tags: ['Lead Assignments'],
289
+ },
290
+ },
191
291
  }, {
192
292
  pathPrefix: '/v2',
193
293
  commonResponses: {
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=lead-assignments.contract.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lead-assignments.contract.spec.d.ts","sourceRoot":"","sources":["../../contracts/lead-assignments/lead-assignments.contract.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const bun_test_1 = require("bun:test");
4
+ const lead_assignments_contract_1 = require("./lead-assignments.contract");
5
+ (0, bun_test_1.describe)('CompleteAssignment callback fields', () => {
6
+ (0, bun_test_1.it)('exposes quarter-hour slots from 08:00 to 18:00', () => {
7
+ (0, bun_test_1.expect)(lead_assignments_contract_1.CALLBACK_TIME_SLOTS[0]).toBe('08:00');
8
+ (0, bun_test_1.expect)(lead_assignments_contract_1.CALLBACK_TIME_SLOTS.at(-1)).toBe('18:00');
9
+ (0, bun_test_1.expect)(lead_assignments_contract_1.CALLBACK_TIME_SLOTS).toContain('14:15');
10
+ (0, bun_test_1.expect)(lead_assignments_contract_1.CALLBACK_TIME_SLOTS).not.toContain('07:45');
11
+ (0, bun_test_1.expect)(lead_assignments_contract_1.CALLBACK_TIME_SLOTS.length).toBe(41);
12
+ });
13
+ (0, bun_test_1.it)('keeps CompleteAssignmentSchema a plain object so the form generator can read .shape', () => {
14
+ (0, bun_test_1.expect)(lead_assignments_contract_1.CompleteAssignmentSchema.shape.callbackDate).toBeDefined();
15
+ (0, bun_test_1.expect)(lead_assignments_contract_1.CompleteAssignmentSchema.shape.callbackTime).toBeDefined();
16
+ });
17
+ (0, bun_test_1.it)('accepts a completion with no callback', () => {
18
+ const parsed = lead_assignments_contract_1.CompleteAssignmentBodySchema.safeParse({ rating: 5 });
19
+ (0, bun_test_1.expect)(parsed.success).toBe(true);
20
+ });
21
+ (0, bun_test_1.it)('accepts a completion with both callback fields', () => {
22
+ const parsed = lead_assignments_contract_1.CompleteAssignmentBodySchema.safeParse({
23
+ rating: 5,
24
+ callbackDate: '2026-09-01',
25
+ callbackTime: '14:15',
26
+ });
27
+ (0, bun_test_1.expect)(parsed.success).toBe(true);
28
+ });
29
+ (0, bun_test_1.it)('rejects a date without a time', () => {
30
+ const parsed = lead_assignments_contract_1.CompleteAssignmentBodySchema.safeParse({
31
+ rating: 5,
32
+ callbackDate: '2026-09-01',
33
+ });
34
+ (0, bun_test_1.expect)(parsed.success).toBe(false);
35
+ });
36
+ (0, bun_test_1.it)('rejects a time without a date', () => {
37
+ const parsed = lead_assignments_contract_1.CompleteAssignmentBodySchema.safeParse({
38
+ rating: 5,
39
+ callbackTime: '14:15',
40
+ });
41
+ (0, bun_test_1.expect)(parsed.success).toBe(false);
42
+ });
43
+ (0, bun_test_1.it)('rejects a slot outside the allowed set', () => {
44
+ const parsed = lead_assignments_contract_1.CompleteAssignmentBodySchema.safeParse({
45
+ rating: 5,
46
+ callbackDate: '2026-09-01',
47
+ callbackTime: '14:07',
48
+ });
49
+ (0, bun_test_1.expect)(parsed.success).toBe(false);
50
+ });
51
+ });