@cool-digital-solutions/interferir-models 1.2.92 → 1.2.93

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.
@@ -7,7 +7,130 @@ const mongoose_1 = require("mongoose");
7
7
  const express_http_context_1 = __importDefault(require("express-http-context"));
8
8
  const _config_1 = require("../config");
9
9
  const aiHrCandidateSchema = new mongoose_1.Schema({
10
- data: { type: Object, required: true },
10
+ firstName: { type: String, required: true },
11
+ middleName: { type: String, default: null },
12
+ lastName: { type: String, required: true },
13
+ publicIdentifier: { type: String, required: true },
14
+ urn: { type: String, required: true },
15
+ url: { type: String, required: true },
16
+ hasPremium: { type: Boolean, required: true },
17
+ isInfluencer: { type: Boolean, required: true },
18
+ isCreator: { type: Boolean, required: true },
19
+ isOpenlink: { type: Boolean, required: true },
20
+ isJobSeeker: { type: Boolean, required: true },
21
+ isHiring: { type: Boolean, required: true },
22
+ isRetired: { type: Boolean, required: true },
23
+ linkedinId: { type: String, required: true },
24
+ creatorInfo: { type: Object, default: null },
25
+ headline: { type: String, required: true },
26
+ connections: { type: Number, required: true },
27
+ followers: { type: Number, required: true },
28
+ location: {
29
+ name: { type: String, required: true },
30
+ urn: { type: String, required: true },
31
+ country: {
32
+ name: { type: String, required: true },
33
+ code: { type: String, required: true },
34
+ urn: { type: String, required: true },
35
+ },
36
+ },
37
+ topPosition: {
38
+ startDate: { type: Number, required: true },
39
+ endDate: { type: Number, default: null },
40
+ companyInfo: {
41
+ name: { type: String, required: true },
42
+ logo: { type: String, required: true },
43
+ universalName: { type: String, required: true },
44
+ url: { type: String, required: true },
45
+ urn: { type: String, required: true },
46
+ },
47
+ urn: { type: String, required: true },
48
+ },
49
+ profilePicture: { type: String, default: null },
50
+ backgroundPicture: { type: String, required: true },
51
+ profilePictureId: { type: String, default: null },
52
+ versionTag: { type: String, required: true },
53
+ isVerified: { type: Boolean, required: true },
54
+ about: { type: String, required: true },
55
+ featured: [
56
+ {
57
+ type: { type: String, required: true },
58
+ title: { type: String, required: true },
59
+ subtitle: { type: String, required: true },
60
+ text: { type: String, default: null },
61
+ image: { type: String, required: true },
62
+ url: { type: String, required: true },
63
+ },
64
+ ],
65
+ languages: [
66
+ {
67
+ language: { type: String, required: true },
68
+ proficiency: { type: String, required: true },
69
+ },
70
+ ],
71
+ licensesAndCertifications: [
72
+ {
73
+ type: mongoose_1.Schema.Types.Mixed,
74
+ },
75
+ ],
76
+ experience: [
77
+ {
78
+ company: {
79
+ name: { type: String, required: true },
80
+ location: { type: String, default: null },
81
+ locationType: { type: String, default: null },
82
+ logoUrl: { type: String, required: true },
83
+ publicIdentifier: { type: String, required: true },
84
+ urn: { type: String, required: true },
85
+ url: { type: String, required: true },
86
+ },
87
+ positions: [
88
+ {
89
+ role: { type: String, required: true },
90
+ employmentType: { type: String, default: null },
91
+ location: { type: String, required: true },
92
+ locationType: { type: String, default: null },
93
+ description: { type: String, required: true },
94
+ skills: [{ type: String }],
95
+ isCurrentPosition: { type: Boolean, required: true },
96
+ startDate: { type: Number, required: true },
97
+ endDate: { type: Number, default: null },
98
+ duration: {
99
+ months: { type: Number, default: null },
100
+ years: { type: Number, default: null },
101
+ },
102
+ },
103
+ ],
104
+ },
105
+ ],
106
+ education: [
107
+ {
108
+ institute: {
109
+ name: { type: String, required: true },
110
+ logo: { type: String, required: true },
111
+ url: { type: String, required: true },
112
+ urn: { type: String, required: true },
113
+ },
114
+ degreeProgram: { type: String, required: true },
115
+ additionalInfo: { type: String, required: true },
116
+ description: { type: String, required: true },
117
+ startDate: { type: Number, required: true },
118
+ endDate: { type: Number, required: true },
119
+ duration: {
120
+ years: { type: Number, required: true },
121
+ months: { type: Number, required: true },
122
+ },
123
+ },
124
+ ],
125
+ skills: [
126
+ {
127
+ name: { type: String, required: true },
128
+ endorserCount: { type: String, default: null },
129
+ endorsers: [{ type: mongoose_1.Schema.Types.Mixed }],
130
+ urn: { type: String, default: null },
131
+ },
132
+ ],
133
+ data: { type: Object, default: {} },
11
134
  createdBy: { type: mongoose_1.Schema.Types.ObjectId, ref: 'User', default: null },
12
135
  updatedBy: { type: mongoose_1.Schema.Types.ObjectId, ref: 'User', default: null },
13
136
  updatedDate: Number,
@@ -1,5 +1,126 @@
1
1
  import { BaseModel, BaseSchema } from '../config';
2
+ export interface ICountry {
3
+ name: string;
4
+ code: string;
5
+ urn: string;
6
+ }
7
+ export interface ILocation {
8
+ name: string;
9
+ urn: string;
10
+ country: ICountry;
11
+ }
12
+ export interface ICompanyInfo {
13
+ name: string;
14
+ logo: string;
15
+ universalName: string;
16
+ url: string;
17
+ urn: string;
18
+ }
19
+ export interface ITopPosition {
20
+ startDate: number;
21
+ endDate?: number;
22
+ companyInfo: ICompanyInfo;
23
+ urn: string;
24
+ }
25
+ export interface IFeatured {
26
+ type: string;
27
+ title: string;
28
+ subtitle: string;
29
+ text?: string;
30
+ image: string;
31
+ url: string;
32
+ }
33
+ export interface ILanguage {
34
+ language: string;
35
+ proficiency: string;
36
+ }
37
+ export interface IExperiencePositionDuration {
38
+ months?: number;
39
+ years?: number;
40
+ }
41
+ export interface IExperiencePosition {
42
+ role: string;
43
+ employmentType?: string;
44
+ location: string;
45
+ locationType?: string;
46
+ description: string;
47
+ skills: string[];
48
+ isCurrentPosition: boolean;
49
+ startDate: number;
50
+ endDate?: number;
51
+ duration: IExperiencePositionDuration;
52
+ }
53
+ export interface IExperienceCompany {
54
+ name: string;
55
+ location?: string;
56
+ locationType?: string;
57
+ logoUrl: string;
58
+ publicIdentifier: string;
59
+ urn: string;
60
+ url: string;
61
+ }
62
+ export interface IExperience {
63
+ company: IExperienceCompany;
64
+ positions: IExperiencePosition[];
65
+ }
66
+ export interface IEducationInstitute {
67
+ name: string;
68
+ logo: string;
69
+ url: string;
70
+ urn: string;
71
+ }
72
+ export interface IEducationDuration {
73
+ years: number;
74
+ months: number;
75
+ }
76
+ export interface IEducation {
77
+ institute: IEducationInstitute;
78
+ degreeProgram: string;
79
+ additionalInfo: string;
80
+ description: string;
81
+ startDate: number;
82
+ endDate: number;
83
+ duration: IEducationDuration;
84
+ }
85
+ export interface ISkill {
86
+ name: string;
87
+ endorserCount?: string;
88
+ endorsers: object[];
89
+ urn?: string;
90
+ }
2
91
  export interface IAiHrCandidate extends BaseSchema {
92
+ firstName: string;
93
+ middleName?: string;
94
+ lastName: string;
95
+ publicIdentifier: string;
96
+ urn: string;
97
+ url: string;
98
+ hasPremium: boolean;
99
+ isInfluencer: boolean;
100
+ isCreator: boolean;
101
+ isOpenlink: boolean;
102
+ isJobSeeker: boolean;
103
+ isHiring: boolean;
104
+ isRetired: boolean;
105
+ linkedinId: string;
106
+ creatorInfo?: object;
107
+ headline: string;
108
+ connections: number;
109
+ followers: number;
110
+ location: ILocation;
111
+ topPosition: ITopPosition;
112
+ profilePicture?: string;
113
+ backgroundPicture: string;
114
+ profilePictureId?: string;
115
+ versionTag: string;
116
+ isVerified: boolean;
117
+ about: string;
118
+ featured: IFeatured[];
119
+ languages: ILanguage[];
120
+ licensesAndCertifications: object[];
121
+ experience: IExperience[];
122
+ education: IEducation[];
123
+ skills: ISkill[];
3
124
  data: object;
4
125
  }
5
126
  export interface IAiHrCandidateModel extends BaseModel<IAiHrCandidate> {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cool-digital-solutions/interferir-models",
3
- "version": "1.2.92",
3
+ "version": "1.2.93",
4
4
  "main": "./dist/index.js",
5
5
  "files": [
6
6
  "dist/**/*"