@adaptware/eagles-db 0.4.29 → 0.4.31

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.
@@ -1,5 +1,5 @@
1
1
  {
2
- "name": "prisma-client-1ee035e6acae5ce864a78deb692cbe5bc6558887cb0ab8401e77d990ba412d18",
2
+ "name": "prisma-client-f05d233af6ffecf16ea2c3e83d2950f9da8af3f106b47826db95d40526590c98",
3
3
  "main": "index.js",
4
4
  "types": "index.d.ts",
5
5
  "browser": "index-browser.js",
@@ -252,6 +252,94 @@ model ActivityLog {
252
252
  @@schema("public")
253
253
  }
254
254
 
255
+ model ApplicationAnalytics {
256
+ id String @id @default(uuid())
257
+
258
+ organisation_id String
259
+ application_id String @unique
260
+ job_description_id String
261
+ candidate_id String
262
+
263
+ source_id String?
264
+ source_name String?
265
+ source_category SourceCategory?
266
+ source_colour String?
267
+
268
+ job_code String?
269
+ job_number Int?
270
+ role_title String?
271
+ hiring_manager_id String?
272
+
273
+ candidate_name String?
274
+ recruiter_id String?
275
+
276
+ applied_at DateTime
277
+ status_updated_at DateTime?
278
+
279
+ status ApplicationStatus?
280
+ fit_check_score Float?
281
+
282
+ is_screened Boolean @default(false)
283
+ is_evaluated Boolean @default(false)
284
+ is_rejected Boolean @default(false)
285
+ is_shortlisted Boolean @default(false)
286
+ has_committed_evaluation Boolean @default(false)
287
+
288
+ updated_at DateTime @updatedAt
289
+
290
+ @@index([organisation_id, applied_at])
291
+ @@index([organisation_id, source_id, applied_at])
292
+ @@index([job_description_id, applied_at])
293
+ @@index([organisation_id, hiring_manager_id])
294
+ @@map("application_analytics")
295
+ @@schema("analytics")
296
+ }
297
+
298
+ model ApplicationAnalyticsDaily {
299
+ id String @id @default(uuid())
300
+
301
+ snapshot_date DateTime @db.Date
302
+
303
+ organisation_id String
304
+ application_id String
305
+ job_description_id String
306
+ candidate_id String
307
+
308
+ source_id String?
309
+ source_name String?
310
+ source_category SourceCategory?
311
+ source_colour String?
312
+
313
+ job_code String?
314
+ job_number Int?
315
+ role_title String?
316
+ hiring_manager_id String?
317
+
318
+ candidate_name String?
319
+ recruiter_id String?
320
+
321
+ applied_at DateTime
322
+ status_updated_at DateTime?
323
+
324
+ status ApplicationStatus?
325
+ fit_check_score Float?
326
+
327
+ is_screened Boolean @default(false)
328
+ is_evaluated Boolean @default(false)
329
+ is_rejected Boolean @default(false)
330
+ is_shortlisted Boolean @default(false)
331
+ has_committed_evaluation Boolean @default(false)
332
+
333
+ @@unique([snapshot_date, application_id])
334
+ @@index([snapshot_date], map: "aad_snapshot_date_idx")
335
+ @@index([snapshot_date, organisation_id], map: "aad_snapshot_org_idx")
336
+ @@index([snapshot_date, organisation_id, source_id], map: "aad_snapshot_org_source_idx")
337
+ @@index([snapshot_date, organisation_id, applied_at], map: "aad_snapshot_org_applied_idx")
338
+ @@index([snapshot_date, job_description_id], map: "aad_snapshot_job_idx")
339
+ @@map("application_analytics_daily")
340
+ @@schema("analytics")
341
+ }
342
+
255
343
  // PENDING could be understood as unscreened
256
344
  enum ApplicationStatus {
257
345
  PENDING
@@ -418,6 +506,126 @@ model AssessmentQuestion {
418
506
  @@schema("public")
419
507
  }
420
508
 
509
+ enum AssessmentRoundStatus {
510
+ SCHEDULED
511
+ IN_PROGRESS
512
+ COMPLETED
513
+ EVALUATED
514
+ CANCELLED
515
+
516
+ @@schema("analytics")
517
+ }
518
+
519
+ model AssessmentRoundAnalytics {
520
+ id String @id @default(uuid())
521
+
522
+ organisation_id String
523
+ round_id String @unique
524
+ assessment_id String @unique
525
+ application_id String?
526
+ candidate_id String
527
+ job_description_id String
528
+ evaluation_plan_id String
529
+
530
+ job_code String?
531
+ job_number Int?
532
+ role_title String?
533
+ hiring_manager_id String?
534
+ department String?
535
+ location String?
536
+
537
+ round_name String?
538
+ evaluation_category EvaluationCategory?
539
+ round_type RoundType?
540
+ round_format EvaluationRoundFormat?
541
+ plan_order_no Int?
542
+ plan_type EvaluationPlanType?
543
+ is_custom Boolean @default(false)
544
+
545
+ reviewer_id String?
546
+ reviewer_employee_id String?
547
+ reviewer_name String?
548
+
549
+ candidate_name String?
550
+
551
+ evaluation_type EvaluationType?
552
+
553
+ scheduled_start_at DateTime?
554
+ scheduled_end_at DateTime?
555
+ actual_start_at DateTime?
556
+ actual_end_at DateTime?
557
+ attempt_expires_at DateTime?
558
+ evaluated_at DateTime?
559
+
560
+ score Float?
561
+ status AssessmentRoundStatus?
562
+ round_result RoundResult?
563
+
564
+ updated_at DateTime @updatedAt
565
+
566
+ @@index([organisation_id, evaluated_at])
567
+ @@index([organisation_id, reviewer_id])
568
+ @@index([job_description_id])
569
+ @@index([application_id])
570
+ @@map("assessment_round_analytics")
571
+ @@schema("analytics")
572
+ }
573
+
574
+ model AssessmentRoundAnalyticsDaily {
575
+ id String @id @default(uuid())
576
+
577
+ snapshot_date DateTime @db.Date
578
+
579
+ organisation_id String
580
+ round_id String
581
+ assessment_id String
582
+ application_id String?
583
+ candidate_id String
584
+ job_description_id String
585
+ evaluation_plan_id String
586
+
587
+ job_code String?
588
+ job_number Int?
589
+ role_title String?
590
+ hiring_manager_id String?
591
+ department String?
592
+ location String?
593
+
594
+ round_name String?
595
+ evaluation_category EvaluationCategory?
596
+ round_type RoundType?
597
+ round_format EvaluationRoundFormat?
598
+ plan_order_no Int?
599
+ plan_type EvaluationPlanType?
600
+ is_custom Boolean @default(false)
601
+
602
+ reviewer_id String?
603
+ reviewer_employee_id String?
604
+ reviewer_name String?
605
+
606
+ candidate_name String?
607
+
608
+ evaluation_type EvaluationType?
609
+
610
+ scheduled_start_at DateTime?
611
+ scheduled_end_at DateTime?
612
+ actual_start_at DateTime?
613
+ actual_end_at DateTime?
614
+ attempt_expires_at DateTime?
615
+ evaluated_at DateTime?
616
+
617
+ score Float?
618
+ status AssessmentRoundStatus?
619
+ round_result RoundResult?
620
+
621
+ @@unique([snapshot_date, assessment_id])
622
+ @@index([snapshot_date], map: "asrad_snapshot_date_idx")
623
+ @@index([snapshot_date, organisation_id], map: "asrad_snapshot_org_idx")
624
+ @@index([snapshot_date, job_description_id], map: "asrad_snapshot_job_idx")
625
+ @@map("assessment_round_analytics_daily")
626
+ @@schema("analytics")
627
+ }
628
+
421
629
  enum AssignmentStatus {
422
630
  AVAILABLE
423
631
  SCHEDULED
@@ -492,6 +700,116 @@ model AssignmentLibrary {
492
700
  @@schema("public")
493
701
  }
494
702
 
703
+ model AssignmentRoundAnalytics {
704
+ id String @id @default(uuid())
705
+
706
+ organisation_id String
707
+ round_id String @unique
708
+ assignment_id String @unique
709
+ application_id String?
710
+ candidate_id String
711
+ job_description_id String
712
+ evaluation_plan_id String
713
+
714
+ job_code String?
715
+ job_number Int?
716
+ role_title String?
717
+ hiring_manager_id String?
718
+ department String?
719
+ location String?
720
+
721
+ round_name String?
722
+ evaluation_category EvaluationCategory?
723
+ round_type RoundType?
724
+ round_format EvaluationRoundFormat?
725
+ plan_order_no Int?
726
+ plan_type EvaluationPlanType?
727
+ is_custom Boolean @default(false)
728
+
729
+ reviewer_id String?
730
+ reviewer_employee_id String?
731
+ reviewer_name String?
732
+
733
+ candidate_name String?
734
+
735
+ evaluation_type EvaluationType?
736
+
737
+ scheduled_start_at DateTime?
738
+ scheduled_end_at DateTime?
739
+ completed_at DateTime?
740
+ evaluated_at DateTime?
741
+ cancelled_at DateTime?
742
+
743
+ status AssignmentStatus?
744
+ overall_score Int?
745
+ cancel_reason String?
746
+ round_result RoundResult?
747
+
748
+ updated_at DateTime @updatedAt
749
+
750
+ @@index([organisation_id, evaluated_at])
751
+ @@index([organisation_id, reviewer_id])
752
+ @@index([job_description_id])
753
+ @@index([application_id])
754
+ @@map("assignment_round_analytics")
755
+ @@schema("analytics")
756
+ }
757
+
758
+ model AssignmentRoundAnalyticsDaily {
759
+ id String @id @default(uuid())
760
+
761
+ snapshot_date DateTime @db.Date
762
+
763
+ organisation_id String
764
+ round_id String
765
+ assignment_id String
766
+ application_id String?
767
+ candidate_id String
768
+ job_description_id String
769
+ evaluation_plan_id String
770
+
771
+ job_code String?
772
+ job_number Int?
773
+ role_title String?
774
+ hiring_manager_id String?
775
+ department String?
776
+ location String?
777
+
778
+ round_name String?
779
+ evaluation_category EvaluationCategory?
780
+ round_type RoundType?
781
+ round_format EvaluationRoundFormat?
782
+ plan_order_no Int?
783
+ plan_type EvaluationPlanType?
784
+ is_custom Boolean @default(false)
785
+
786
+ reviewer_id String?
787
+ reviewer_employee_id String?
788
+ reviewer_name String?
789
+
790
+ candidate_name String?
791
+
792
+ evaluation_type EvaluationType?
793
+
794
+ scheduled_start_at DateTime?
795
+ scheduled_end_at DateTime?
796
+ completed_at DateTime?
797
+ evaluated_at DateTime?
798
+ cancelled_at DateTime?
799
+
800
+ status AssignmentStatus?
801
+ overall_score Int?
802
+ cancel_reason String?
803
+ round_result RoundResult?
804
+
805
+ @@unique([snapshot_date, assignment_id])
806
+ @@index([snapshot_date], map: "arad_snapshot_date_idx")
807
+ @@index([snapshot_date, organisation_id], map: "arad_snapshot_org_idx")
808
+ @@index([snapshot_date, job_description_id], map: "arad_snapshot_job_idx")
809
+ @@map("assignment_round_analytics_daily")
810
+ @@schema("analytics")
811
+ }
812
+
495
813
  enum AuthProvider {
496
814
  GOOGLE
497
815
  MICROSOFT
@@ -836,7 +1154,8 @@ model Document {
836
1154
  organisation Organisation? @relation(fields: [organisation_id], references: [id], onDelete: Cascade, onUpdate: Cascade)
837
1155
  candidate User? @relation(fields: [candidate_id], references: [id], onDelete: SetNull, onUpdate: Cascade)
838
1156
  resume Resume?
839
- job_description_source JobDescription?
1157
+ job_description_source JobDescription? @relation("SourceDocument")
1158
+ job_description_rendered JobDescription? @relation("RenderedJdDocument")
840
1159
  interview_recording Interview?
841
1160
  job_application_responses JobApplicationResponse[]
842
1161
  assignment_solution Assignment? @relation("AssignmentSolutionDocument")
@@ -1330,6 +1649,147 @@ model InterviewNotes {
1330
1649
  @@schema("public")
1331
1650
  }
1332
1651
 
1652
+ enum InterviewRecommendation {
1653
+ ACCEPTED
1654
+ REJECTED
1655
+ UNSURE
1656
+
1657
+ @@schema("analytics")
1658
+ }
1659
+
1660
+ model InterviewRoundAnalytics {
1661
+ id String @id @default(uuid())
1662
+
1663
+ organisation_id String
1664
+ round_id String @unique
1665
+ interview_id String @unique
1666
+ application_id String?
1667
+ candidate_id String
1668
+ job_description_id String
1669
+ evaluation_plan_id String
1670
+
1671
+ job_code String?
1672
+ job_number Int?
1673
+ role_title String?
1674
+ hiring_manager_id String?
1675
+ department String?
1676
+ location String?
1677
+
1678
+ round_name String?
1679
+ evaluation_category EvaluationCategory?
1680
+ round_type RoundType?
1681
+ round_format EvaluationRoundFormat?
1682
+ plan_order_no Int?
1683
+ plan_type EvaluationPlanType?
1684
+ is_custom Boolean @default(false)
1685
+
1686
+ interviewer_id String?
1687
+ interviewer_employee_id String?
1688
+ interviewer_name String?
1689
+
1690
+ candidate_name String?
1691
+ candidate_email String?
1692
+
1693
+ evaluation_type EvaluationType?
1694
+ ai_assistance_mode AiAssistanceMode?
1695
+ interview_platform InterviewPlatform?
1696
+ interview_status InterviewStatus?
1697
+
1698
+ scheduled_start_at DateTime?
1699
+ scheduled_end_at DateTime?
1700
+ actual_start_at DateTime?
1701
+ actual_end_at DateTime?
1702
+ evaluated_at DateTime?
1703
+ first_assigned_at DateTime?
1704
+ duration_minutes Int?
1705
+
1706
+ human_rating String?
1707
+ ai_rating String?
1708
+ recommendation InterviewRecommendation?
1709
+ ai_disagrees_with_ai Boolean?
1710
+
1711
+ difficulty_score Float?
1712
+ supportiveness_score Float?
1713
+ topics_coverage_percent Float?
1714
+
1715
+ updated_at DateTime @updatedAt
1716
+
1717
+ @@index([organisation_id, evaluated_at])
1718
+ @@index([organisation_id, interviewer_id, evaluated_at])
1719
+ @@index([job_description_id])
1720
+ @@index([application_id])
1721
+ @@index([organisation_id, hiring_manager_id])
1722
+ @@map("interview_round_analytics")
1723
+ @@schema("analytics")
1724
+ }
1725
+
1726
+ model InterviewRoundAnalyticsDaily {
1727
+ id String @id @default(uuid())
1728
+
1729
+ snapshot_date DateTime @db.Date
1730
+
1731
+ organisation_id String
1732
+ round_id String
1733
+ interview_id String
1734
+ application_id String?
1735
+ candidate_id String
1736
+ job_description_id String
1737
+ evaluation_plan_id String
1738
+
1739
+ job_code String?
1740
+ job_number Int?
1741
+ role_title String?
1742
+ hiring_manager_id String?
1743
+ department String?
1744
+ location String?
1745
+
1746
+ round_name String?
1747
+ evaluation_category EvaluationCategory?
1748
+ round_type RoundType?
1749
+ round_format EvaluationRoundFormat?
1750
+ plan_order_no Int?
1751
+ plan_type EvaluationPlanType?
1752
+ is_custom Boolean @default(false)
1753
+
1754
+ interviewer_id String?
1755
+ interviewer_employee_id String?
1756
+ interviewer_name String?
1757
+
1758
+ candidate_name String?
1759
+ candidate_email String?
1760
+
1761
+ evaluation_type EvaluationType?
1762
+ ai_assistance_mode AiAssistanceMode?
1763
+ interview_platform InterviewPlatform?
1764
+ interview_status InterviewStatus?
1765
+
1766
+ scheduled_start_at DateTime?
1767
+ scheduled_end_at DateTime?
1768
+ actual_start_at DateTime?
1769
+ actual_end_at DateTime?
1770
+ evaluated_at DateTime?
1771
+ first_assigned_at DateTime?
1772
+ duration_minutes Int?
1773
+
1774
+ human_rating String?
1775
+ ai_rating String?
1776
+ recommendation InterviewRecommendation?
1777
+ ai_disagrees_with_ai Boolean?
1778
+
1779
+ difficulty_score Float?
1780
+ supportiveness_score Float?
1781
+ topics_coverage_percent Float?
1782
+
1783
+ @@unique([snapshot_date, interview_id])
1784
+ @@index([snapshot_date], map: "irad_snapshot_date_idx")
1785
+ @@index([snapshot_date, organisation_id], map: "irad_snapshot_org_idx")
1786
+ @@index([snapshot_date, organisation_id, interviewer_id], map: "irad_snapshot_org_interviewer_idx")
1787
+ @@index([snapshot_date, job_description_id], map: "irad_snapshot_job_idx")
1788
+ @@index([snapshot_date, organisation_id, evaluated_at], map: "irad_snapshot_org_evaluated_idx")
1789
+ @@map("interview_round_analytics_daily")
1790
+ @@schema("analytics")
1791
+ }
1792
+
1333
1793
  model InterviewerOrganisationAnalytics {
1334
1794
  id String @id @default(uuid())
1335
1795
  organisation_id String
@@ -1590,6 +2050,8 @@ model JobDescription {
1590
2050
  /// @deprecated Prefer `source_document_id` + `Document` (type JOB_DESCRIPTION).
1591
2051
  uploaded_job_description_path String?
1592
2052
  source_document_id String? @unique
2053
+ rendered_jd_document_id String? @unique
2054
+ rendered_jd_document Document? @relation("RenderedJdDocument", fields: [rendered_jd_document_id], references: [id], onDelete: SetNull)
1593
2055
  is_plan_published Boolean @default(false)
1594
2056
  is_posted Boolean @default(false)
1595
2057
  summary Json?
@@ -1610,7 +2072,7 @@ model JobDescription {
1610
2072
  job_profile_id String?
1611
2073
  job_profile JobProfile? @relation(fields: [job_profile_id], references: [id], onDelete: SetNull, onUpdate: Cascade)
1612
2074
  organisation Organisation @relation(fields: [organisation_id], references: [id], onDelete: Cascade, onUpdate: Cascade)
1613
- source_document Document? @relation(fields: [source_document_id], references: [id], onDelete: SetNull, onUpdate: Cascade)
2075
+ source_document Document? @relation("SourceDocument", fields: [source_document_id], references: [id], onDelete: SetNull, onUpdate: Cascade)
1614
2076
  applications Application[]
1615
2077
  interviews Interview[]
1616
2078
  assignments Assignment[]
@@ -1626,9 +2088,9 @@ model JobDescription {
1626
2088
  recruiters User[]
1627
2089
  transcripts Transcript[]
1628
2090
  integration_job_syncs IntegrationJobSync[]
2091
+ job_application_template JobApplicationTemplate?
1629
2092
  conversations Conversation[]
1630
2093
  communication_messages CommunicationMessage[]
1631
- job_application_template JobApplicationTemplate?
1632
2094
 
1633
2095
  @@index([organisation_id])
1634
2096
  @@index([hiring_manager_id])
@@ -1972,6 +2434,9 @@ model OpenJobAnalytics {
1972
2434
  closing_date DateTime?
1973
2435
  is_open Boolean @default(true)
1974
2436
 
2437
+ closure_type OpenJobClosureType?
2438
+ time_to_hire_days Int?
2439
+
1975
2440
  application_count Int @default(0)
1976
2441
  in_consideration_count Int @default(0)
1977
2442
  shortlisted_count Int @default(0)
@@ -1982,6 +2447,7 @@ model OpenJobAnalytics {
1982
2447
  @@index([organisation_id, hiring_manager_id])
1983
2448
  @@index([organisation_id, opened_at])
1984
2449
  @@index([organisation_id, job_number])
2450
+ @@index([organisation_id, is_open, closure_type, closing_date])
1985
2451
  @@index([job_description_id])
1986
2452
  @@map("open_job_analytics")
1987
2453
  @@schema("analytics")
@@ -2008,6 +2474,9 @@ model OpenJobAnalyticsDaily {
2008
2474
  closing_date DateTime?
2009
2475
  is_open Boolean @default(true)
2010
2476
 
2477
+ closure_type OpenJobClosureType?
2478
+ time_to_hire_days Int?
2479
+
2011
2480
  application_count Int @default(0)
2012
2481
  in_consideration_count Int @default(0)
2013
2482
  shortlisted_count Int @default(0)
@@ -2272,6 +2741,56 @@ model RefreshToken {
2272
2741
  @@schema("public")
2273
2742
  }
2274
2743
 
2744
+ enum OpenJobClosureType {
2745
+ FILLED
2746
+ CANCELLED
2747
+
2748
+ @@schema("analytics")
2749
+ }
2750
+
2751
+ model ReportingOverviewJobAnalytics {
2752
+ id String @id @default(uuid())
2753
+ organisation_id String
2754
+ job_description_id String @unique
2755
+
2756
+ job_code String?
2757
+ job_number Int?
2758
+ hiring_manager_id String?
2759
+
2760
+ opened_at DateTime
2761
+ target_closing_date DateTime?
2762
+ closing_date DateTime?
2763
+ is_open Boolean @default(true)
2764
+
2765
+ closure_type OpenJobClosureType?
2766
+ time_to_hire_days Int?
2767
+
2768
+ in_consideration_count Int @default(0)
2769
+
2770
+ updated_at DateTime @updatedAt
2771
+
2772
+ recruiters ReportingOverviewJobRecruiter[]
2773
+
2774
+ @@index([organisation_id, is_open])
2775
+ @@index([organisation_id, hiring_manager_id, is_open])
2776
+ @@index([organisation_id, closing_date, closure_type])
2777
+ @@map("reporting_overview_job_analytics")
2778
+ @@schema("analytics")
2779
+ }
2780
+
2781
+ model ReportingOverviewJobRecruiter {
2782
+ id String @id @default(uuid())
2783
+ job_description_id String
2784
+ recruiter_user_id String
2785
+
2786
+ job ReportingOverviewJobAnalytics @relation(fields: [job_description_id], references: [job_description_id], onDelete: Cascade)
2787
+
2788
+ @@unique([job_description_id, recruiter_user_id])
2789
+ @@index([recruiter_user_id])
2790
+ @@map("reporting_overview_job_recruiters")
2791
+ @@schema("analytics")
2792
+ }
2793
+
2275
2794
  model Resume {
2276
2795
  id String @id @default(uuid())
2277
2796
  user_id String?