@jobsearch-works/firestore-models 3.0.0 → 4.0.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/index.d.mts CHANGED
@@ -528,6 +528,8 @@ declare const ClientStatusEnum: {
528
528
  readonly deleted: "deleted";
529
529
  };
530
530
 
531
+ declare const initialQuestions: readonly ["What are your career goals for the next 2-3 years?", "What are your strongest technical skills?", "What are the biggest challenges you've overcome in your career?", "What work environment do you thrive in?", "What are your most significant professional achievements?", "What's your approach to learning new technologies?", "What type of projects are you most interested in working on?", "What values are most important to you in a company?"];
532
+
531
533
  type AgentStatus = "active" | "inactive";
532
534
  interface Agent {
533
535
  readonly id?: string;
@@ -628,6 +630,7 @@ interface Vacancy {
628
630
  jobId: string;
629
631
  category: VacancyCategory;
630
632
  suggestedTo?: string[];
633
+ embeddedValue?: number[];
631
634
  createdAt?: Date | string;
632
635
  updatedAt?: Date | string;
633
636
  }
@@ -640,48 +643,55 @@ interface VacancySuggestion {
640
643
  createdAt?: Date | string;
641
644
  }
642
645
 
646
+ /**
647
+ * Address interface for client resume
648
+ */
649
+ interface Address {
650
+ street: string;
651
+ city: string;
652
+ state: string;
653
+ zip_code: string;
654
+ country: string;
655
+ }
656
+ /**
657
+ * Education interface for client resume
658
+ */
643
659
  interface Education {
644
660
  degree: string;
645
- fieldOfStudy: string;
661
+ field_of_study: string;
646
662
  institution: string;
647
- startDate: string | null;
648
- endDate: string | null;
663
+ start_date: string;
664
+ end_date: string;
649
665
  }
650
-
651
- interface WorkExperience {
652
- jobTitle: string;
666
+ /**
667
+ * Work experience interface for client resume
668
+ */
669
+ interface Experience {
670
+ job_title: string;
653
671
  company: string;
654
- startDate: string;
655
- endDate: string;
672
+ start_date: string;
673
+ end_date: string;
656
674
  description: string;
657
675
  }
658
-
676
+ /**
677
+ * Certification interface for client resume
678
+ */
659
679
  interface Certification {
660
680
  name: string;
661
- organization: string;
662
- issueDate: string;
663
- expirationDate?: string;
664
- credentialId?: string;
665
- verificationUrl?: string;
666
- }
667
-
668
- interface Language {
669
- language: string;
681
+ issuing_organization: string;
682
+ issue_date: string;
670
683
  }
671
-
684
+ /**
685
+ * Project interface for client resume
686
+ */
672
687
  interface Project {
673
- projectName: string;
688
+ project_name: string;
674
689
  description: string;
675
690
  technologies: string[];
676
- startDate: string;
677
- endDate: string;
678
- url: string | null;
691
+ start_date: string;
692
+ end_date: string;
693
+ url: string;
679
694
  }
680
-
681
- type Skill = string;
682
-
683
- type Summary = string | null;
684
-
685
695
  /**
686
696
  * Subcollection document under Client
687
697
  * Path: clients/{clientId}/resumes/{docId}
@@ -691,21 +701,23 @@ type Summary = string | null;
691
701
  */
692
702
  interface ClientResume {
693
703
  readonly id?: string;
694
- jobTitle?: string;
695
- skills?: Skill[];
696
- education?: Education[];
697
- experience?: WorkExperience[];
698
- certifications?: Certification[];
699
- languages?: Language[];
700
- projects?: Project[];
701
- summary?: Summary;
702
- github?: string;
703
- linkedin?: string;
704
- website?: string;
705
- createdAt: Date | string;
706
- updatedAt: Date | string;
707
- storagePath?: string;
708
- additionalInfo?: string;
704
+ first_name: string;
705
+ last_name: string;
706
+ email: string;
707
+ phone: string;
708
+ linkedin: string;
709
+ summary: string;
710
+ github: string;
711
+ website: string;
712
+ address: Address;
713
+ job_title: string;
714
+ skills: string[];
715
+ education: Education[];
716
+ experience: Experience[];
717
+ certifications: Certification[];
718
+ languages: string[];
719
+ projects: Project[];
720
+ additional_info: string;
709
721
  }
710
722
 
711
723
  declare const ApplicationStatus: {
@@ -930,42 +942,6 @@ interface ClientVirtualInterview {
930
942
  }>;
931
943
  }
932
944
 
933
- interface Award {
934
- readonly name: string;
935
- readonly organization: string;
936
- readonly date: Date | string;
937
- readonly description?: string;
938
- }
939
-
940
- interface Publication {
941
- readonly title: string;
942
- readonly venue: string;
943
- readonly date: Date | string;
944
- readonly coAuthors?: string[];
945
- readonly url?: string;
946
- }
947
-
948
- interface Reference {
949
- readonly name: string;
950
- readonly title: string;
951
- readonly company: string;
952
- readonly relationship: string;
953
- readonly contactInfo: {
954
- email?: string;
955
- phone?: string;
956
- };
957
- readonly highlights?: string;
958
- }
959
-
960
- interface VolunteerEntry {
961
- readonly organization: string;
962
- readonly role: string;
963
- readonly startDate: Date | string;
964
- readonly endDate?: Date | string;
965
- readonly responsibilities?: string;
966
- readonly achievements?: string;
967
- }
968
-
969
945
  interface ClientCompanyPreferences {
970
946
  companyId?: string;
971
947
  name: string;
@@ -991,6 +967,12 @@ interface ClientAccessToken {
991
967
  * For new email structure
992
968
  */
993
969
  type EmailCategory = "One Time Pin" | "Spam" | "Job Submitted" | "Job Interview" | "Job Accepted" | "Job Rejection" | "Require More Info" | "Job Suggestions" | "Uncategorised";
970
+ interface EmailLog {
971
+ outcome: string;
972
+ status: string;
973
+ timestamp: string;
974
+ errorDetails: string;
975
+ }
994
976
  interface ClientEmail {
995
977
  bcc: string[];
996
978
  cc: string[];
@@ -1007,6 +989,7 @@ interface ClientEmail {
1007
989
  labels: string[];
1008
990
  categories: EmailCategory[];
1009
991
  jobApplicationId?: string;
992
+ logs: EmailLog[];
1010
993
  }
1011
994
 
1012
995
  type FirestoreTimestamp = {
@@ -1089,4 +1072,4 @@ declare const firestorePaths: {
1089
1072
  };
1090
1073
  };
1091
1074
 
1092
- export { Agent, AgentStatus, Application, ApplicationQuestion, ApplicationQuestionType, ApplicationQuestionTypeOptions, ApplicationStatus, AuthEmail, AuthUser, Award, Certification, Client, ClientAccessToken, ClientCompanyPreferences, ClientEmail, ClientGmailToken, ClientInitialQuestion, ClientJobPreferences, ClientLogin, ClientPersonalData, ClientQuestion, ClientResume, ClientStatus, ClientStatusEnum, ClientVirtualInterview, Companies, Education, EmailCategory, FirestoreTimestamp, JobCategory, JobTitle, Language, LocationId, Project, Publication, Reference, Skill, Summary, UserPublic, Vacancy, VacancyCategory, VacancySuggestion, VolunteerEntry, WorkExperience, countries, firestorePaths, jobClassifications, locations };
1075
+ export { Address, Agent, AgentStatus, Application, ApplicationQuestion, ApplicationQuestionType, ApplicationQuestionTypeOptions, ApplicationStatus, AuthEmail, AuthUser, Certification, Client, ClientAccessToken, ClientCompanyPreferences, ClientEmail, ClientGmailToken, ClientInitialQuestion, ClientJobPreferences, ClientLogin, ClientPersonalData, ClientQuestion, ClientResume, ClientStatus, ClientStatusEnum, ClientVirtualInterview, Companies, Education, EmailCategory, EmailLog, Experience, FirestoreTimestamp, JobCategory, JobTitle, LocationId, Project, UserPublic, Vacancy, VacancyCategory, VacancySuggestion, countries, firestorePaths, initialQuestions, jobClassifications, locations };
package/dist/index.d.ts CHANGED
@@ -528,6 +528,8 @@ declare const ClientStatusEnum: {
528
528
  readonly deleted: "deleted";
529
529
  };
530
530
 
531
+ declare const initialQuestions: readonly ["What are your career goals for the next 2-3 years?", "What are your strongest technical skills?", "What are the biggest challenges you've overcome in your career?", "What work environment do you thrive in?", "What are your most significant professional achievements?", "What's your approach to learning new technologies?", "What type of projects are you most interested in working on?", "What values are most important to you in a company?"];
532
+
531
533
  type AgentStatus = "active" | "inactive";
532
534
  interface Agent {
533
535
  readonly id?: string;
@@ -628,6 +630,7 @@ interface Vacancy {
628
630
  jobId: string;
629
631
  category: VacancyCategory;
630
632
  suggestedTo?: string[];
633
+ embeddedValue?: number[];
631
634
  createdAt?: Date | string;
632
635
  updatedAt?: Date | string;
633
636
  }
@@ -640,48 +643,55 @@ interface VacancySuggestion {
640
643
  createdAt?: Date | string;
641
644
  }
642
645
 
646
+ /**
647
+ * Address interface for client resume
648
+ */
649
+ interface Address {
650
+ street: string;
651
+ city: string;
652
+ state: string;
653
+ zip_code: string;
654
+ country: string;
655
+ }
656
+ /**
657
+ * Education interface for client resume
658
+ */
643
659
  interface Education {
644
660
  degree: string;
645
- fieldOfStudy: string;
661
+ field_of_study: string;
646
662
  institution: string;
647
- startDate: string | null;
648
- endDate: string | null;
663
+ start_date: string;
664
+ end_date: string;
649
665
  }
650
-
651
- interface WorkExperience {
652
- jobTitle: string;
666
+ /**
667
+ * Work experience interface for client resume
668
+ */
669
+ interface Experience {
670
+ job_title: string;
653
671
  company: string;
654
- startDate: string;
655
- endDate: string;
672
+ start_date: string;
673
+ end_date: string;
656
674
  description: string;
657
675
  }
658
-
676
+ /**
677
+ * Certification interface for client resume
678
+ */
659
679
  interface Certification {
660
680
  name: string;
661
- organization: string;
662
- issueDate: string;
663
- expirationDate?: string;
664
- credentialId?: string;
665
- verificationUrl?: string;
666
- }
667
-
668
- interface Language {
669
- language: string;
681
+ issuing_organization: string;
682
+ issue_date: string;
670
683
  }
671
-
684
+ /**
685
+ * Project interface for client resume
686
+ */
672
687
  interface Project {
673
- projectName: string;
688
+ project_name: string;
674
689
  description: string;
675
690
  technologies: string[];
676
- startDate: string;
677
- endDate: string;
678
- url: string | null;
691
+ start_date: string;
692
+ end_date: string;
693
+ url: string;
679
694
  }
680
-
681
- type Skill = string;
682
-
683
- type Summary = string | null;
684
-
685
695
  /**
686
696
  * Subcollection document under Client
687
697
  * Path: clients/{clientId}/resumes/{docId}
@@ -691,21 +701,23 @@ type Summary = string | null;
691
701
  */
692
702
  interface ClientResume {
693
703
  readonly id?: string;
694
- jobTitle?: string;
695
- skills?: Skill[];
696
- education?: Education[];
697
- experience?: WorkExperience[];
698
- certifications?: Certification[];
699
- languages?: Language[];
700
- projects?: Project[];
701
- summary?: Summary;
702
- github?: string;
703
- linkedin?: string;
704
- website?: string;
705
- createdAt: Date | string;
706
- updatedAt: Date | string;
707
- storagePath?: string;
708
- additionalInfo?: string;
704
+ first_name: string;
705
+ last_name: string;
706
+ email: string;
707
+ phone: string;
708
+ linkedin: string;
709
+ summary: string;
710
+ github: string;
711
+ website: string;
712
+ address: Address;
713
+ job_title: string;
714
+ skills: string[];
715
+ education: Education[];
716
+ experience: Experience[];
717
+ certifications: Certification[];
718
+ languages: string[];
719
+ projects: Project[];
720
+ additional_info: string;
709
721
  }
710
722
 
711
723
  declare const ApplicationStatus: {
@@ -930,42 +942,6 @@ interface ClientVirtualInterview {
930
942
  }>;
931
943
  }
932
944
 
933
- interface Award {
934
- readonly name: string;
935
- readonly organization: string;
936
- readonly date: Date | string;
937
- readonly description?: string;
938
- }
939
-
940
- interface Publication {
941
- readonly title: string;
942
- readonly venue: string;
943
- readonly date: Date | string;
944
- readonly coAuthors?: string[];
945
- readonly url?: string;
946
- }
947
-
948
- interface Reference {
949
- readonly name: string;
950
- readonly title: string;
951
- readonly company: string;
952
- readonly relationship: string;
953
- readonly contactInfo: {
954
- email?: string;
955
- phone?: string;
956
- };
957
- readonly highlights?: string;
958
- }
959
-
960
- interface VolunteerEntry {
961
- readonly organization: string;
962
- readonly role: string;
963
- readonly startDate: Date | string;
964
- readonly endDate?: Date | string;
965
- readonly responsibilities?: string;
966
- readonly achievements?: string;
967
- }
968
-
969
945
  interface ClientCompanyPreferences {
970
946
  companyId?: string;
971
947
  name: string;
@@ -991,6 +967,12 @@ interface ClientAccessToken {
991
967
  * For new email structure
992
968
  */
993
969
  type EmailCategory = "One Time Pin" | "Spam" | "Job Submitted" | "Job Interview" | "Job Accepted" | "Job Rejection" | "Require More Info" | "Job Suggestions" | "Uncategorised";
970
+ interface EmailLog {
971
+ outcome: string;
972
+ status: string;
973
+ timestamp: string;
974
+ errorDetails: string;
975
+ }
994
976
  interface ClientEmail {
995
977
  bcc: string[];
996
978
  cc: string[];
@@ -1007,6 +989,7 @@ interface ClientEmail {
1007
989
  labels: string[];
1008
990
  categories: EmailCategory[];
1009
991
  jobApplicationId?: string;
992
+ logs: EmailLog[];
1010
993
  }
1011
994
 
1012
995
  type FirestoreTimestamp = {
@@ -1089,4 +1072,4 @@ declare const firestorePaths: {
1089
1072
  };
1090
1073
  };
1091
1074
 
1092
- export { Agent, AgentStatus, Application, ApplicationQuestion, ApplicationQuestionType, ApplicationQuestionTypeOptions, ApplicationStatus, AuthEmail, AuthUser, Award, Certification, Client, ClientAccessToken, ClientCompanyPreferences, ClientEmail, ClientGmailToken, ClientInitialQuestion, ClientJobPreferences, ClientLogin, ClientPersonalData, ClientQuestion, ClientResume, ClientStatus, ClientStatusEnum, ClientVirtualInterview, Companies, Education, EmailCategory, FirestoreTimestamp, JobCategory, JobTitle, Language, LocationId, Project, Publication, Reference, Skill, Summary, UserPublic, Vacancy, VacancyCategory, VacancySuggestion, VolunteerEntry, WorkExperience, countries, firestorePaths, jobClassifications, locations };
1075
+ export { Address, Agent, AgentStatus, Application, ApplicationQuestion, ApplicationQuestionType, ApplicationQuestionTypeOptions, ApplicationStatus, AuthEmail, AuthUser, Certification, Client, ClientAccessToken, ClientCompanyPreferences, ClientEmail, ClientGmailToken, ClientInitialQuestion, ClientJobPreferences, ClientLogin, ClientPersonalData, ClientQuestion, ClientResume, ClientStatus, ClientStatusEnum, ClientVirtualInterview, Companies, Education, EmailCategory, EmailLog, Experience, FirestoreTimestamp, JobCategory, JobTitle, LocationId, Project, UserPublic, Vacancy, VacancyCategory, VacancySuggestion, countries, firestorePaths, initialQuestions, jobClassifications, locations };
package/dist/index.js CHANGED
@@ -26,6 +26,7 @@ __export(src_exports, {
26
26
  VacancyCategory: () => VacancyCategory,
27
27
  countries: () => countries,
28
28
  firestorePaths: () => firestorePaths,
29
+ initialQuestions: () => initialQuestions,
29
30
  jobClassifications: () => jobClassification_default,
30
31
  locations: () => locations
31
32
  });
@@ -1221,6 +1222,18 @@ var ClientStatusEnum = {
1221
1222
  "deleted": "deleted"
1222
1223
  };
1223
1224
 
1225
+ // src/static/initialQuestions.ts
1226
+ var initialQuestions = [
1227
+ "What are your career goals for the next 2-3 years?",
1228
+ "What are your strongest technical skills?",
1229
+ "What are the biggest challenges you've overcome in your career?",
1230
+ "What work environment do you thrive in?",
1231
+ "What are your most significant professional achievements?",
1232
+ "What's your approach to learning new technologies?",
1233
+ "What type of projects are you most interested in working on?",
1234
+ "What values are most important to you in a company?"
1235
+ ];
1236
+
1224
1237
  // src/types/Vacancy.ts
1225
1238
  var VacancyCategory = {
1226
1239
  Accounting: "Accounting",
@@ -1354,6 +1367,7 @@ var firestorePaths = {
1354
1367
  VacancyCategory,
1355
1368
  countries,
1356
1369
  firestorePaths,
1370
+ initialQuestions,
1357
1371
  jobClassifications,
1358
1372
  locations
1359
1373
  });
package/dist/index.mjs CHANGED
@@ -1188,6 +1188,18 @@ var ClientStatusEnum = {
1188
1188
  "deleted": "deleted"
1189
1189
  };
1190
1190
 
1191
+ // src/static/initialQuestions.ts
1192
+ var initialQuestions = [
1193
+ "What are your career goals for the next 2-3 years?",
1194
+ "What are your strongest technical skills?",
1195
+ "What are the biggest challenges you've overcome in your career?",
1196
+ "What work environment do you thrive in?",
1197
+ "What are your most significant professional achievements?",
1198
+ "What's your approach to learning new technologies?",
1199
+ "What type of projects are you most interested in working on?",
1200
+ "What values are most important to you in a company?"
1201
+ ];
1202
+
1191
1203
  // src/types/Vacancy.ts
1192
1204
  var VacancyCategory = {
1193
1205
  Accounting: "Accounting",
@@ -1320,6 +1332,7 @@ export {
1320
1332
  VacancyCategory,
1321
1333
  countries,
1322
1334
  firestorePaths,
1335
+ initialQuestions,
1323
1336
  jobClassification_default as jobClassifications,
1324
1337
  locations
1325
1338
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jobsearch-works/firestore-models",
3
- "version": "3.0.0",
3
+ "version": "4.0.0",
4
4
  "description": "A shared library for standardizing Firestore document schemas and paths across multiple projects",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",