@dakkitor/api-contracts 1.1.153 → 1.4.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.
- package/dist/abilities/abilities.contract.d.ts +53 -1
- package/dist/abilities/abilities.contract.d.ts.map +1 -1
- package/dist/abilities/abilities.contract.js +92 -1
- package/dist/abilities/abilities.contract.spec.d.ts +2 -0
- package/dist/abilities/abilities.contract.spec.d.ts.map +1 -0
- package/dist/abilities/abilities.contract.spec.js +145 -0
- package/dist/abilities/admin-dashboard.abilities.test.d.ts +2 -0
- package/dist/abilities/admin-dashboard.abilities.test.d.ts.map +1 -0
- package/dist/abilities/admin-dashboard.abilities.test.js +33 -0
- package/dist/abilities/admin.abilities.json +19 -0
- package/dist/abilities/bot.abilities.json +13 -4
- package/dist/abilities/first-agent.abilities.json +317 -70
- package/dist/abilities/interconnection.abilities.json +75 -0
- package/dist/abilities/kpi.abilities.json +68 -0
- package/dist/abilities/office-manager.abilities.json +111 -0
- package/dist/abilities/second-agent.abilities.json +417 -43
- package/dist/abilities/team-leads.json +71 -6
- package/dist/abilities/worker-curator.abilities.json +233 -0
- package/dist/actives/actives.contract.d.ts +19379 -23651
- package/dist/actives/actives.contract.d.ts.map +1 -1
- package/dist/actives/actives.contract.js +517 -114
- package/dist/agent-client-links/agent-client-links.contract.d.ts +1431 -291
- package/dist/agent-client-links/agent-client-links.contract.d.ts.map +1 -1
- package/dist/auth/auth.contract.d.ts +1050 -81
- package/dist/auth/auth.contract.d.ts.map +1 -1
- package/dist/auth/auth.contract.js +115 -3
- package/dist/bookings/booking-worker-summary.spec.d.ts +2 -0
- package/dist/bookings/booking-worker-summary.spec.d.ts.map +1 -0
- package/dist/bookings/booking-worker-summary.spec.js +25 -0
- package/dist/bookings/bookings.contract.d.ts +20643 -26117
- package/dist/bookings/bookings.contract.d.ts.map +1 -1
- package/dist/bookings/bookings.contract.js +383 -91
- package/dist/bookings/bookings.contract.spec.d.ts +2 -0
- package/dist/bookings/bookings.contract.spec.d.ts.map +1 -0
- package/dist/bookings/bookings.contract.spec.js +11 -0
- package/dist/bookings/job-lock.spec.d.ts +2 -0
- package/dist/bookings/job-lock.spec.d.ts.map +1 -0
- package/dist/bookings/job-lock.spec.js +56 -0
- package/dist/bot-parse-cache/bot-parse-cache.contract.d.ts +232 -0
- package/dist/bot-parse-cache/bot-parse-cache.contract.d.ts.map +1 -0
- package/dist/bot-parse-cache/bot-parse-cache.contract.js +64 -0
- package/dist/call-history/call-history.contract.d.ts +1336 -767
- package/dist/call-history/call-history.contract.d.ts.map +1 -1
- package/dist/call-history/call-history.contract.js +86 -10
- package/dist/calls-feed/calls-feed.contract.d.ts +417 -0
- package/dist/calls-feed/calls-feed.contract.d.ts.map +1 -0
- package/dist/calls-feed/calls-feed.contract.js +32 -0
- package/dist/client-contacts/client-contacts.contract.d.ts +410 -226
- package/dist/client-contacts/client-contacts.contract.d.ts.map +1 -1
- package/dist/client-contacts/client-contacts.contract.js +35 -4
- package/dist/clients/clients.contract.d.ts +227 -73
- package/dist/clients/clients.contract.d.ts.map +1 -1
- package/dist/clients/clients.contract.js +45 -21
- package/dist/collaboration-checkings/collaboration-checkings.contract.d.ts +2908 -1834
- package/dist/collaboration-checkings/collaboration-checkings.contract.d.ts.map +1 -1
- package/dist/collaboration-checkings/collaboration-checkings.contract.js +14 -9
- package/dist/collaborations/collaborations.contract.d.ts +2676 -1409
- package/dist/collaborations/collaborations.contract.d.ts.map +1 -1
- package/dist/collaborations/collaborations.contract.js +33 -9
- package/dist/common/call-rating.schema.d.ts.map +1 -1
- package/dist/common/call-rating.schema.js +4 -2
- package/dist/common/common-schemas.d.ts +59 -11
- package/dist/common/common-schemas.d.ts.map +1 -1
- package/dist/common/common-schemas.js +55 -29
- package/dist/common/error-schemas.d.ts +2 -2
- package/dist/common/pagination-query.schema.d.ts +13 -2
- package/dist/common/pagination-query.schema.d.ts.map +1 -1
- package/dist/common/pagination-query.schema.js +21 -2
- package/dist/common/pagination-query.schema.spec.d.ts +2 -0
- package/dist/common/pagination-query.schema.spec.d.ts.map +1 -0
- package/dist/common/pagination-query.schema.spec.js +53 -0
- package/dist/companies/companies.contract.d.ts +53 -28
- package/dist/companies/companies.contract.d.ts.map +1 -1
- package/dist/companies/companies.contract.js +11 -10
- package/dist/crews/crews.contract.d.ts +1010 -196
- package/dist/crews/crews.contract.d.ts.map +1 -1
- package/dist/crews/crews.contract.js +98 -17
- package/dist/crews/crews.contract.spec.d.ts +2 -0
- package/dist/crews/crews.contract.spec.d.ts.map +1 -0
- package/dist/crews/crews.contract.spec.js +67 -0
- package/dist/cron-executions/cron-executions.contract.d.ts +988 -59
- package/dist/cron-executions/cron-executions.contract.d.ts.map +1 -1
- package/dist/cron-executions/cron-executions.contract.js +127 -7
- package/dist/curated-worker-leads/__tests__/disposition-reason.spec.d.ts +2 -0
- package/dist/curated-worker-leads/__tests__/disposition-reason.spec.d.ts.map +1 -0
- package/dist/curated-worker-leads/__tests__/disposition-reason.spec.js +40 -0
- package/dist/curated-worker-leads/candidate-coordination-snapshot.spec.d.ts +2 -0
- package/dist/curated-worker-leads/candidate-coordination-snapshot.spec.d.ts.map +1 -0
- package/dist/curated-worker-leads/candidate-coordination-snapshot.spec.js +16 -0
- package/dist/curated-worker-leads/candidate-coordination.contract.d.ts +21650 -0
- package/dist/curated-worker-leads/candidate-coordination.contract.d.ts.map +1 -0
- package/dist/curated-worker-leads/candidate-coordination.contract.js +921 -0
- package/dist/curated-worker-leads/candidate-coordination.contract.spec.d.ts +2 -0
- package/dist/curated-worker-leads/candidate-coordination.contract.spec.d.ts.map +1 -0
- package/dist/curated-worker-leads/candidate-coordination.contract.spec.js +51 -0
- package/dist/curated-worker-leads/candidate-edit-session.contract.d.ts +2364 -0
- package/dist/curated-worker-leads/candidate-edit-session.contract.d.ts.map +1 -0
- package/dist/curated-worker-leads/candidate-edit-session.contract.js +173 -0
- package/dist/curated-worker-leads/consent-queue.contract.d.ts +4497 -0
- package/dist/curated-worker-leads/consent-queue.contract.d.ts.map +1 -0
- package/dist/curated-worker-leads/consent-queue.contract.js +201 -0
- package/dist/curated-worker-leads/contact-history.spec.d.ts +2 -0
- package/dist/curated-worker-leads/contact-history.spec.d.ts.map +1 -0
- package/dist/curated-worker-leads/contact-history.spec.js +88 -0
- package/dist/curated-worker-leads/contact-session.contract.spec.d.ts +2 -0
- package/dist/curated-worker-leads/contact-session.contract.spec.d.ts.map +1 -0
- package/dist/curated-worker-leads/contact-session.contract.spec.js +315 -0
- package/dist/curated-worker-leads/curated-worker-lead-config.contract.d.ts +489 -0
- package/dist/curated-worker-leads/curated-worker-lead-config.contract.d.ts.map +1 -0
- package/dist/curated-worker-leads/curated-worker-lead-config.contract.js +88 -0
- package/dist/curated-worker-leads/curated-worker-leads.contract.d.ts +135 -0
- package/dist/curated-worker-leads/curated-worker-leads.contract.d.ts.map +1 -0
- package/dist/curated-worker-leads/curated-worker-leads.contract.js +32 -0
- package/dist/curated-worker-leads/job-candidate-cards.spec.d.ts +2 -0
- package/dist/curated-worker-leads/job-candidate-cards.spec.d.ts.map +1 -0
- package/dist/curated-worker-leads/job-candidate-cards.spec.js +157 -0
- package/dist/curated-worker-leads/job-candidates.spec.d.ts +2 -0
- package/dist/curated-worker-leads/job-candidates.spec.d.ts.map +1 -0
- package/dist/curated-worker-leads/job-candidates.spec.js +140 -0
- package/dist/curated-worker-leads/job-feed-match-counts.contract.spec.d.ts +2 -0
- package/dist/curated-worker-leads/job-feed-match-counts.contract.spec.d.ts.map +1 -0
- package/dist/curated-worker-leads/job-feed-match-counts.contract.spec.js +19 -0
- package/dist/curated-worker-leads/jobs-tab.contract.d.ts +18365 -0
- package/dist/curated-worker-leads/jobs-tab.contract.d.ts.map +1 -0
- package/dist/curated-worker-leads/jobs-tab.contract.js +642 -0
- package/dist/curated-worker-leads/lead-agent-area.contract.d.ts +348 -0
- package/dist/curated-worker-leads/lead-agent-area.contract.d.ts.map +1 -0
- package/dist/curated-worker-leads/lead-agent-area.contract.js +51 -0
- package/dist/curated-worker-leads/owned-jobs-tab.contract.d.ts +1116 -0
- package/dist/curated-worker-leads/owned-jobs-tab.contract.d.ts.map +1 -0
- package/dist/curated-worker-leads/owned-jobs-tab.contract.js +93 -0
- package/dist/curated-workers/curated-filter-additions.spec.d.ts +2 -0
- package/dist/curated-workers/curated-filter-additions.spec.d.ts.map +1 -0
- package/dist/curated-workers/curated-filter-additions.spec.js +17 -0
- package/dist/curated-workers/curated-job-seeking.spec.d.ts +2 -0
- package/dist/curated-workers/curated-job-seeking.spec.d.ts.map +1 -0
- package/dist/curated-workers/curated-job-seeking.spec.js +53 -0
- package/dist/curated-workers/curated-workers-id-documents.spec.d.ts +2 -0
- package/dist/curated-workers/curated-workers-id-documents.spec.d.ts.map +1 -0
- package/dist/curated-workers/curated-workers-id-documents.spec.js +38 -0
- package/dist/curated-workers/curated-workers.contract.d.ts +6160 -1906
- package/dist/curated-workers/curated-workers.contract.d.ts.map +1 -1
- package/dist/curated-workers/curated-workers.contract.js +333 -51
- package/dist/dashboards/agent-daily-metrics.contract.d.ts +10 -10
- package/dist/dashboards/agent-daily-metrics.contract.js +1 -1
- package/dist/dashboards/dashboard-widgets.contract.d.ts +3800 -496
- package/dist/dashboards/dashboard-widgets.contract.d.ts.map +1 -1
- package/dist/dashboards/dashboard-widgets.contract.js +527 -29
- package/dist/dashboards/dashboard.contract.d.ts +8 -8
- package/dist/document-intake/document-intake.contract.d.ts +3132 -0
- package/dist/document-intake/document-intake.contract.d.ts.map +1 -0
- package/dist/document-intake/document-intake.contract.js +418 -0
- package/dist/export-jobs/export-jobs.contract.d.ts +3918 -0
- package/dist/export-jobs/export-jobs.contract.d.ts.map +1 -0
- package/dist/export-jobs/export-jobs.contract.js +240 -0
- package/dist/exports-events/exports-events.schemas.d.ts +90 -0
- package/dist/exports-events/exports-events.schemas.d.ts.map +1 -0
- package/dist/exports-events/exports-events.schemas.js +56 -0
- package/dist/files/files.contract.d.ts +133 -126
- package/dist/files/files.contract.d.ts.map +1 -1
- package/dist/files/files.contract.js +8 -0
- package/dist/health/health.contract.d.ts +4 -4
- package/dist/index.d.ts +82 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +87 -1
- package/dist/interactions/interactions.contract.d.ts +162 -0
- package/dist/interactions/interactions.contract.d.ts.map +1 -0
- package/dist/interactions/interactions.contract.js +42 -0
- package/dist/job-clusters/job-clusters.contract.d.ts +1584 -0
- package/dist/job-clusters/job-clusters.contract.d.ts.map +1 -0
- package/dist/job-clusters/job-clusters.contract.js +133 -0
- package/dist/jobs/jobs.contract.d.ts +16517 -8495
- package/dist/jobs/jobs.contract.d.ts.map +1 -1
- package/dist/jobs/jobs.contract.js +394 -190
- package/dist/jobs/jobs.contract.spec.d.ts +2 -0
- package/dist/jobs/jobs.contract.spec.d.ts.map +1 -0
- package/dist/jobs/jobs.contract.spec.js +70 -0
- package/dist/kpi-impersonation/kpi-impersonation.contract.d.ts +75 -75
- package/dist/lead-assignments/lead-assignments.contract.d.ts +2933 -1122
- package/dist/lead-assignments/lead-assignments.contract.d.ts.map +1 -1
- package/dist/lead-assignments/lead-assignments.contract.js +29 -7
- package/dist/lead-distribution/agent-lead-distribution.contract.d.ts +328 -64
- package/dist/lead-distribution/agent-lead-distribution.contract.d.ts.map +1 -1
- package/dist/lead-distribution/agent-lead-distribution.contract.js +1 -1
- package/dist/lead-distribution/lead-distribution-config.contract.d.ts +31 -31
- package/dist/leads/leads.contract.d.ts +830 -368
- package/dist/leads/leads.contract.d.ts.map +1 -1
- package/dist/leads/leads.contract.js +106 -26
- package/dist/locations/locations.contract.d.ts +36 -36
- package/dist/notifications/notifications.contract.d.ts +1039 -0
- package/dist/notifications/notifications.contract.d.ts.map +1 -0
- package/dist/notifications/notifications.contract.js +110 -0
- package/dist/offices/offices.contract.d.ts +210 -60
- package/dist/offices/offices.contract.d.ts.map +1 -1
- package/dist/offices/offices.contract.js +18 -4
- package/dist/outreach/__tests__/outreach-claim.test.d.ts +2 -0
- package/dist/outreach/__tests__/outreach-claim.test.d.ts.map +1 -0
- package/dist/outreach/__tests__/outreach-claim.test.js +97 -0
- package/dist/outreach/__tests__/outreach-confirm-release.test.d.ts +2 -0
- package/dist/outreach/__tests__/outreach-confirm-release.test.d.ts.map +1 -0
- package/dist/outreach/__tests__/outreach-confirm-release.test.js +98 -0
- package/dist/outreach/__tests__/outreach-routes.test.d.ts +2 -0
- package/dist/outreach/__tests__/outreach-routes.test.d.ts.map +1 -0
- package/dist/outreach/__tests__/outreach-routes.test.js +57 -0
- package/dist/outreach/__tests__/outreach.schemas.test.d.ts +2 -0
- package/dist/outreach/__tests__/outreach.schemas.test.d.ts.map +1 -0
- package/dist/outreach/__tests__/outreach.schemas.test.js +140 -0
- package/dist/outreach/outreach.contract.d.ts +809 -0
- package/dist/outreach/outreach.contract.d.ts.map +1 -0
- package/dist/outreach/outreach.contract.js +195 -0
- package/dist/outreach/outreach.schemas.d.ts +113 -0
- package/dist/outreach/outreach.schemas.d.ts.map +1 -0
- package/dist/outreach/outreach.schemas.js +132 -0
- package/dist/own-research/own-research.contract.d.ts +1356 -552
- package/dist/own-research/own-research.contract.d.ts.map +1 -1
- package/dist/own-research/own-research.contract.js +14 -3
- package/dist/postcodes/postcodes.contract.d.ts +16 -16
- package/dist/proofs/proof-category.enum.d.ts +4 -0
- package/dist/proofs/proof-category.enum.d.ts.map +1 -0
- package/dist/proofs/proof-category.enum.js +5 -0
- package/dist/proofs/proof-entity-type.enum.d.ts +4 -0
- package/dist/proofs/proof-entity-type.enum.d.ts.map +1 -0
- package/dist/proofs/proof-entity-type.enum.js +5 -0
- package/dist/proofs/proof-type.enum.d.ts +28 -0
- package/dist/proofs/proof-type.enum.d.ts.map +1 -0
- package/dist/proofs/proof-type.enum.js +14 -0
- package/dist/proofs/proofs.contract.d.ts +3009 -0
- package/dist/proofs/proofs.contract.d.ts.map +1 -0
- package/dist/proofs/proofs.contract.js +92 -0
- package/dist/proofs/proofs.dtos.d.ts +1319 -0
- package/dist/proofs/proofs.dtos.d.ts.map +1 -0
- package/dist/proofs/proofs.dtos.js +178 -0
- package/dist/qualifications/qualifications.contract.d.ts +94 -94
- package/dist/realtime/data-changed.d.ts +21 -0
- package/dist/realtime/data-changed.d.ts.map +1 -0
- package/dist/realtime/data-changed.js +37 -0
- package/dist/shared/booking-history.schema.d.ts +27 -0
- package/dist/shared/booking-history.schema.d.ts.map +1 -0
- package/dist/shared/booking-history.schema.js +22 -0
- package/dist/shared/booking-history.spec.d.ts +2 -0
- package/dist/shared/booking-history.spec.d.ts.map +1 -0
- package/dist/shared/booking-history.spec.js +44 -0
- package/dist/shared/contact-suppressions.contract.d.ts +22 -0
- package/dist/shared/contact-suppressions.contract.d.ts.map +1 -0
- package/dist/shared/contact-suppressions.contract.js +13 -0
- package/dist/shared/live-booking.schema.d.ts +57 -0
- package/dist/shared/live-booking.schema.d.ts.map +1 -0
- package/dist/shared/live-booking.schema.js +34 -0
- package/dist/shared/summary-schemas.d.ts +218 -0
- package/dist/shared/summary-schemas.d.ts.map +1 -0
- package/dist/shared/summary-schemas.js +56 -0
- package/dist/sheets-sync/__tests__/sheets-sync-events.schemas.test.d.ts +2 -0
- package/dist/sheets-sync/__tests__/sheets-sync-events.schemas.test.d.ts.map +1 -0
- package/dist/sheets-sync/__tests__/sheets-sync-events.schemas.test.js +20 -0
- package/dist/sheets-sync/__tests__/tab-sync-config.schema.test.d.ts +2 -0
- package/dist/sheets-sync/__tests__/tab-sync-config.schema.test.d.ts.map +1 -0
- package/dist/sheets-sync/__tests__/tab-sync-config.schema.test.js +41 -0
- package/dist/sheets-sync/sheets-sync-events.schemas.d.ts +43 -0
- package/dist/sheets-sync/sheets-sync-events.schemas.d.ts.map +1 -0
- package/dist/sheets-sync/sheets-sync-events.schemas.js +29 -0
- package/dist/sheets-sync/sheets-sync.contract.d.ts +7258 -0
- package/dist/sheets-sync/sheets-sync.contract.d.ts.map +1 -0
- package/dist/sheets-sync/sheets-sync.contract.js +323 -0
- package/dist/telegram/telegram.contract.d.ts +727 -0
- package/dist/telegram/telegram.contract.d.ts.map +1 -0
- package/dist/telegram/telegram.contract.js +75 -0
- package/dist/trades/trade-rate-assessment.d.ts +18 -0
- package/dist/trades/trade-rate-assessment.d.ts.map +1 -0
- package/dist/trades/trade-rate-assessment.js +46 -0
- package/dist/trades/trade-rate-assessment.spec.d.ts +2 -0
- package/dist/trades/trade-rate-assessment.spec.d.ts.map +1 -0
- package/dist/trades/trade-rate-assessment.spec.js +223 -0
- package/dist/trades/trades.contract.d.ts +111 -0
- package/dist/trades/trades.contract.d.ts.map +1 -1
- package/dist/trades/trades.contract.js +49 -1
- package/dist/trades/trades.contract.spec.d.ts +2 -0
- package/dist/trades/trades.contract.spec.d.ts.map +1 -0
- package/dist/trades/trades.contract.spec.js +173 -0
- package/dist/user-access-grants/build-user-access-grant-rules.d.ts +10 -0
- package/dist/user-access-grants/build-user-access-grant-rules.d.ts.map +1 -0
- package/dist/user-access-grants/build-user-access-grant-rules.js +69 -0
- package/dist/user-access-grants/build-user-access-grant-rules.spec.d.ts +2 -0
- package/dist/user-access-grants/build-user-access-grant-rules.spec.d.ts.map +1 -0
- package/dist/user-access-grants/build-user-access-grant-rules.spec.js +77 -0
- package/dist/user-access-grants/user-access-grant-templates.json +454 -0
- package/dist/user-access-grants/user-access-grants.contract.d.ts +3886 -0
- package/dist/user-access-grants/user-access-grants.contract.d.ts.map +1 -0
- package/dist/user-access-grants/user-access-grants.contract.js +189 -0
- package/dist/user-access-grants/user-access-grants.contract.spec.d.ts +2 -0
- package/dist/user-access-grants/user-access-grants.contract.spec.d.ts.map +1 -0
- package/dist/user-access-grants/user-access-grants.contract.spec.js +149 -0
- package/dist/users/users.contract.d.ts +1959 -349
- package/dist/users/users.contract.d.ts.map +1 -1
- package/dist/users/users.contract.js +222 -37
- package/dist/users/users.contract.spec.d.ts +2 -0
- package/dist/users/users.contract.spec.d.ts.map +1 -0
- package/dist/users/users.contract.spec.js +103 -0
- package/dist/worker-identity-cases/worker-identity-cases.contract.d.ts +4609 -0
- package/dist/worker-identity-cases/worker-identity-cases.contract.d.ts.map +1 -0
- package/dist/worker-identity-cases/worker-identity-cases.contract.js +409 -0
- package/dist/worker-merge-proposals/worker-merge-proposals.contract.d.ts +1511 -0
- package/dist/worker-merge-proposals/worker-merge-proposals.contract.d.ts.map +1 -0
- package/dist/worker-merge-proposals/worker-merge-proposals.contract.js +150 -0
- package/dist/worker-source-identity-conflicts/worker-source-identity-conflicts.contract.d.ts +1106 -0
- package/dist/worker-source-identity-conflicts/worker-source-identity-conflicts.contract.d.ts.map +1 -0
- package/dist/worker-source-identity-conflicts/worker-source-identity-conflicts.contract.js +85 -0
- package/dist/worker-source-identity-conflicts/worker-source-identity-conflicts.contract.spec.d.ts +2 -0
- package/dist/worker-source-identity-conflicts/worker-source-identity-conflicts.contract.spec.d.ts.map +1 -0
- package/dist/worker-source-identity-conflicts/worker-source-identity-conflicts.contract.spec.js +216 -0
- package/dist/worker-source-identity-conflicts/worker-source-identity-conflicts.schemas.d.ts +453 -0
- package/dist/worker-source-identity-conflicts/worker-source-identity-conflicts.schemas.d.ts.map +1 -0
- package/dist/worker-source-identity-conflicts/worker-source-identity-conflicts.schemas.js +109 -0
- package/dist/workers/do-not-contact.contract.d.ts +46 -0
- package/dist/workers/do-not-contact.contract.d.ts.map +1 -0
- package/dist/workers/do-not-contact.contract.js +41 -0
- package/dist/workers/do-not-contact.contract.spec.d.ts +2 -0
- package/dist/workers/do-not-contact.contract.spec.d.ts.map +1 -0
- package/dist/workers/do-not-contact.contract.spec.js +47 -0
- package/dist/workers/duplicate-group-worker.spec.d.ts +2 -0
- package/dist/workers/duplicate-group-worker.spec.d.ts.map +1 -0
- package/dist/workers/duplicate-group-worker.spec.js +34 -0
- package/dist/workers/filter-exact-flags.spec.d.ts +2 -0
- package/dist/workers/filter-exact-flags.spec.d.ts.map +1 -0
- package/dist/workers/filter-exact-flags.spec.js +37 -0
- package/dist/workers/worker-source-attribution.contract.spec.d.ts +2 -0
- package/dist/workers/worker-source-attribution.contract.spec.d.ts.map +1 -0
- package/dist/workers/worker-source-attribution.contract.spec.js +442 -0
- package/dist/workers/worker-source.spec.d.ts +2 -0
- package/dist/workers/worker-source.spec.d.ts.map +1 -0
- package/dist/workers/worker-source.spec.js +13 -0
- package/dist/workers/worker-status-facets.spec.d.ts +2 -0
- package/dist/workers/worker-status-facets.spec.d.ts.map +1 -0
- package/dist/workers/worker-status-facets.spec.js +34 -0
- package/dist/workers/workers.contract.d.ts +19534 -5969
- package/dist/workers/workers.contract.d.ts.map +1 -1
- package/dist/workers/workers.contract.js +1096 -113
- package/dist/workers/workers.contract.spec.d.ts +2 -0
- package/dist/workers/workers.contract.spec.d.ts.map +1 -0
- package/dist/workers/workers.contract.spec.js +31 -0
- 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 @@
|
|
|
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 @@
|
|
|
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 @@
|
|
|
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":""}
|